90a4a72648
New features (some are compile-time options): * INFO and Options pages are laid out properly for multibyte locales, accounting for character widths. * change configure option default for --enable-justify-elts to true. Change default for JUSTIFY to "false". * add PREFERRED_ENCODING to lynx.cfg, along with an options-menu selection for this, to set "Accept-Encoding:" string * 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 * add -nonumbers option, which modifies the output of -dump to suppress the link-numbering * add -listonly option, which modifies the output of -dump to show only the list of links * add -syslog-urls option 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 * the -version option shows the version of ncurses, curses, etc., from runtime data when available. * add -notitle option to suppress title line and following blank line to maximize screen use for small displays * add -nomargins option to suppress left/right margins to maximize screen use for small displays * add NO_MARGINS and NO_TITLE to lynx.cfg * add NESTED_TABLES setting to lynx.cfg to allow site override of the built-in default * 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 * 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 * add configure --enable-largefile / --disable-largefile options. * add --enable-widec configure option to allow building lynx without wide character support using ncursesw, to accommodate users with older releases of ncurses Other enhancements: * improve SSL support: * updated README.sslcerts * update CF_GNUTLS macro to look for -lgnutls-openssl as well as the older -lgnutls-extra library * modify HTLoadHTTP() to interpret leading asterisks in common name fields as wildcards * suppress OpenSSL URL from version message if it happens to be built using GNU TLS (or other libraries which happen to define symbols to pretend they are OpenSSL). * improve HTML interpretation: * fix 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 * add "deflate" to the encoding types which lynx implements. This consists of several parts * adapted logic from w3m's inflate.c to construct an internal "deflate" decompressor. Tested this with http://carsten.codimi.de/gzip.yaws/ * 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. * 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 * fixes to source-view of ftp:// and file:// URLs, i.e., eliminate redundant PRE's, add DOCTYPE and meta tags * 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 * 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 * add presentation type for application/xhtml+xml mime type as per RFC 3236 * add presentation for text/css, to allow browsing ".css" files * 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> * 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 * improvements to character sets and display: * new message files for localization: rw.po, vi.po * updated message files for localization: cs.po, da.po, de.po, et.po, fr.po, hu.po, nl.po, pt_BR.po, sv.po, tr.po * use puts() rather than printf() in some messages to avoid chance of "%" in the translation * 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 * 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. * 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 * improve 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 * 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 * 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 * 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 * 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 * improve def7_uni.tbl substitutions for the symbols beginning at U+2600 * add experimental option --enable-japanese-utf8 for using libiconv for Japanese and UTF-8 * improvements to color-style: * change configure script --enable-color-style so it is enabled by default * add COLOR_STYLE setting to lynx.cfg * 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. * improve interaction with user: * highlight the target and pause for 20 milliseconds when selecting a link with the mouse * 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 * 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 * 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 * 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 * add check for failure to write to disk, e.g., on disk full, and report error condition via HTAlert() * modify suggested_filename() to strip bzip2's ".bz2" suffixes as well as ".zz" suffixes * modify INFO-page to list the rendered size in bytes if the Content-Length is not available * print the contents of image maps, if any, at the end of a dump * command-line options that toggle or set a boolean now accept "true" and "false" strings. * improve interaction with other programs: * strip special characters such as '%' from parameters passed to external programs for EXTERNAL mechanism on Windows platform. This is ifdef'd with WIN_EX * improve cookie support: * modify HTConfirmCookie() and statusline() to allow cookie prompt message in Japanese to not be truncated when using wide-curses * make the maximum number of cookies configurable in lynx.cfg, added MAX_COOKIES_DOMAIN, MAX_COOKIES_GLOBAL and MAX_COOKIES_BUFFER * improvements to debug/traces: * 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 * improvements to scripting/logging: * make "lynx -version" work in the absence of ".cfg" or ".lss" files * modify print_wwwfile_to_fd() and print_crawl_to_fd() to ensure that no trailing blanks are written in a -dump, etc. * correct parsing of "key 0xNN" lines in command-scripts, had omitted a "!" to invert a check * modify initialization so that cat options.txt | lynx - will allow interactive use * other improvements: * modify logic for -dump so it can dump all pages listed on the command line * lynx accepts multiple URLs on the command line; all are added to G)oto history. Documented this in manpage * add (ifdef'd with EXP_HTTP_HEADERS) code to display the full text of the HTTP headers in the INFO page. * modify treatment of symbolic links for ftp-URLs to show the link target, as with the local directory editor * correct sort-order of local directory listing, using the target of a symbolic link to determine whether it is grouped with files or directories * modified mailcap command and testcommand substitutions to provide for running the testcommand's after program initialization * read user's ".newsauth" file for news-server authentication information * escape "From " when it appears in a page which is mailed, to avoid confusing mail clients * add "Anonymous FTP Password" to Options menu, to allow user to override use of personal email address as the anonymous ftp password New/improved sample files: * add script samples/oldlynx, which gives the non-color-style scheme using an executable built for color-style * add scripts/tbl2html.pl, which can be used to generate test pages for the charsets from src/chrtrans/*.tbl * add test/special_urls.html * 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 * 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 New ports: * none (it seems to run everywhere, but there are a few possibilities) Improvements to existing ports: * UNIX: * improve configure script macro CF_XOPEN_SOURCE, ensuring that _POSIX_C_SOURCE is defined with a value. * revise configure script check whether _POSIX_C_SOURCE should be defined, taking into account the _POSIX_SOURCE definition * Linux: * add codepage 857 (DOSTurkish), since console-tools package provides a suitable font * update Linux console font support to use console-tools package. 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 * modify configure script to check for Intel compiler 8.0 (and 9.0). * some others [stripped] Improvements for maintainability and testing: * remove macros such as ARGS1, NOPARM which supported K&R compilers * make ANSI C required, drop support for K&R C. * add scripts/indent.sh, use this to reindent C source files * add tags rules to makefile.in's * 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 * modify configure script and makefiles to allow cross-compiling * add --with-system-type option to configure script to simplify testing the case-statements involving $host_os * 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 * 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 * filter out obsolete URLs from the customizations saved during install of lynx.cfg * 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 * update test/iso8859-1.html (minor fixes) from http://www.ramsch.org/martin/uni/fmi-hp/iso8859-1.html * applied lynx's changes to updated files from ftp.unicode.org to take advantage of less restrictive copyright As well as security-related changes: * eliminate fixed-size buffers in HTrjis() and related functions to avoid potential buffer overflow in nntp pages * eliminate fixed-size buffers in LYExpandHostForURL() to guard against buffer overflow resulting from too-long domain prefix/suffix data from lynx.cfg * reduce TRST_MAXROWSPAN and TRST_MAXCOLSPAN to 200, which is more plausible than 10000 by 1000. * limit TEXTAREA columns to the screen width, and rows to 3 times the screen height. And finally: * A lot of bug fixes * A lot of documentation changes. * A lot of dead code removed
13 lines
396 B
Text
13 lines
396 B
Text
$NetBSD: patch-aa,v 1.8 2007/03/10 09:14:09 wiz Exp $
|
|
|
|
--- makefile.in.orig 2006-09-03 23:25:39.000000000 +0000
|
|
+++ makefile.in
|
|
@@ -56,7 +56,7 @@ mandir= @mandir@/man1
|
|
MANDIR= $(DESTDIR)$(mandir)
|
|
|
|
## Where you want the lynx.cfg file installed
|
|
-sysconfdir= @sysconfdir@
|
|
+sysconfdir= @prefix@/share/examples/lynx
|
|
SYSCONFDIR= $(DESTDIR)$(sysconfdir)
|
|
|
|
## Where you want the doc-files installed
|