diff options
author | Thomas E. Dickey <dickey@invisible-island.net> | 2017-07-04 20:51:15 +0000 |
---|---|---|
committer | Thomas E. Dickey <dickey@invisible-island.net> | 2017-07-04 20:51:15 +0000 |
commit | 2dd18ab6f6b484155c9bd973923bedc336f4b41a (patch) | |
tree | 6bcc35159fb69d47cd024c6f90a957e45f90f959 | |
parent | f8533bb42247761b6b28bdff208cf03289d2fc75 (diff) | |
download | lynx-snapshots-2dd18ab6f6b484155c9bd973923bedc336f4b41a.tar.gz |
snapshot of project "lynx", label v2-8-9dev_14f
-rw-r--r-- | CHANGES | 13 | ||||
-rw-r--r-- | lynx.cfg | 9 | ||||
-rw-r--r-- | lynx.hlp | 144 | ||||
-rw-r--r-- | lynx.man | 9 | ||||
-rw-r--r-- | lynx_help/Lynx_users_guide.html | 25 | ||||
-rw-r--r-- | po/lynx.pot | 669 | ||||
-rwxr-xr-x | scripts/collapse-br | 162 | ||||
-rw-r--r-- | src/GridText.c | 8 | ||||
-rw-r--r-- | src/HTML.c | 15 | ||||
-rw-r--r-- | src/LYGlobalDefs.h | 3 | ||||
-rw-r--r-- | src/LYMain.c | 11 | ||||
-rw-r--r-- | src/LYOptions.c | 50 | ||||
-rw-r--r-- | src/LYReadCFG.c | 3 | ||||
-rw-r--r-- | src/LYrcFile.c | 4 | ||||
-rw-r--r-- | src/LYrcFile.h | 3 |
15 files changed, 721 insertions, 407 deletions
diff --git a/CHANGES b/CHANGES index 0d350e8a..b33be350 100644 --- a/CHANGES +++ b/CHANGES @@ -1,9 +1,18 @@ --- $LynxId: CHANGES,v 1.902 2017/07/02 21:03:29 tom Exp $ +-- $LynxId: CHANGES,v 1.907 2017/07/04 20:17:10 tom Exp $ =============================================================================== Changes since Lynx 2.8 release =============================================================================== -2017-07-02 (2.8.9dev.15) +2017-07-04 (2.8.9dev.15) +* amended the Backes' change to the COLLAPSE_BR_TAGS feature -TD + + use ENABLE_LYNXRC to determine whether it is written to the .lynxrc file. + + add command-line option, etc., for controlling whether blank lines are + trimmed, e.g., trailing lines as well as the special case for collapsing + br-tags. Leading blank lines at the top of the document are untouched. + + modify limit for trimmed lines to retain as little as 1 line; previously + the trimming would go no smaller than 2 lines. +* add command-line option and options-menu item for COLLAPSE_BR_TAGS (patch + by Peter Backes). * fix strict gcc7 warnings on OSX, aside from those due to incorrect system headers -TD * adjust definition of alloca() in HTUtils.h to quiet bogus compiler warning diff --git a/lynx.cfg b/lynx.cfg index bf76661d..5a19a7ea 100644 --- a/lynx.cfg +++ b/lynx.cfg @@ -1,4 +1,4 @@ -# $LynxId: lynx.cfg,v 1.282 2017/05/11 21:22:30 tom Exp $ +# $LynxId: lynx.cfg,v 1.284 2017/07/04 19:53:20 tom Exp $ # lynx.cfg file. # The default placement for this file is /usr/local/lib/lynx.cfg (Unix) # or Lynx_Dir:lynx.cfg (VMS) @@ -1291,6 +1291,12 @@ DEFAULT_INDEX_FILE:http://scout.wisc.edu/ # #COLLAPSE_BR_TAGS:TRUE +.h2 TRIM_BLANK_LINES +# If TRIM_BLANK_LINES is set FALSE, Lynx will not trim trailing blank lines +# from the document. Also, Lynx will not collapse BR-tags onto the previous +# line when it happens to be empty. +#TRIM_BLANK_LINES: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. @@ -3372,6 +3378,7 @@ COLOR:6:brightred:black #ENABLE_LYNXRC:BOOKMARK_FILE:ON #ENABLE_LYNXRC:CASE_SENSITIVE_SEARCHING:ON #ENABLE_LYNXRC:CHARACTER_SET:ON +#ENABLE_LYNXRC:COLLAPSE_BR_TAGS:ON #ENABLE_LYNXRC:COOKIE_ACCEPT_DOMAINS:ON #ENABLE_LYNXRC:COOKIE_FILE:ON #ENABLE_LYNXRC:COOKIE_LOOSE_INVALID_DOMAINS:ON diff --git a/lynx.hlp b/lynx.hlp index 33415c72..f09b7e69 100644 --- a/lynx.hlp +++ b/lynx.hlp @@ -168,6 +168,9 @@ in the lynx.cfg or .lynxrc files. Lynx tries the cfg-file setting first. + -collapse_br_tags + toggles collapsing of BR tags. + -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 @@ -783,6 +786,10 @@ See CRAWL.announce for more information. + -trim_blank_lines + toggles trimming of trailing blank lines as well as the related + trimming of blank lines while collapsing BR tags. + -trim_input_fields trim input text/textarea fields in forms. @@ -793,29 +800,29 @@ toggles use of _underline_ format in dumps. -unique_urls - check for duplicate link numbers in each page and corresponding + 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 + 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 + accept only http URLs (for validation). Complete security restrictions also are implemented. -verbose - toggle [LINK], [IMAGE] and [INLINE] comments with filenames of + toggle [LINK], [IMAGE] and [INLINE] comments with filenames of these images. -version @@ -825,17 +832,17 @@ 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 + 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, + 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 + emit backspaces in output if -dump'ing or -crawl'ing (like man does) -xhtml_parsing @@ -843,7 +850,7 @@ in an XHTML 1.0 document. For example "<p/>" will be discarded. 2 Commands - More than one key can be mapped to a given command. Here are some of + More than one key can be mapped to a given command. Here are some of the most useful: * Use Up arrow and Down arrow to scroll through hypertext links. @@ -855,104 +862,125 @@ * Type "H", "?", or F1 for online help and descriptions of key-stroke commands. - * Type "k" or "K" for a list of the current key-stroke command + * Type "k" or "K" for a list of the current key-stroke command mappings. - If the same command is mapped to the same letter differing only by + If the same command is mapped to the same letter differing only by upper/lowercase only the lowercase mapping is shown. * Type Delete to view history list. 2 Environment - In addition to various "standard" environment variables such as HOME, - PATH, USER, DISPLAY, TMPDIR, etc, Lynx utilizes several Lynx-specific + 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 + 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 + 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 + 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 + 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 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_CFG_PATH If set, this variable overrides the compiled-in - search-list of directories used to find the - configuration files, e.g., lynx.cfg and lynx.lss. + LYNX_CFG_PATH If set, this variable overrides the compiled-in + search-list of directories used to find the + configuration files, e.g., lynx.cfg and lynx.lss. The list is delimited with ":" (or ";" for Windows) like the PATH environment variable. 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 + 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 + 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 curses color style support.] - LYNX_SAVE_SPACE This variable, if set, will override the default + 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 + 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 + 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 + 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 + 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 + 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 + 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/". + Each protocol used by Lynx, (http, ftp, gopher, + etc), can be mapped separately by setting + environment variables of the form PROTOCOL_proxy. + Protocols are indicated in a URI by the name before + ":", e.g., "http" in "http://some.server.dom:port/" + for HTML. + + Depending on your system configuration and + supported protocols, the environment variables + recognized by lynx may include + + cso_proxy + finger_proxy + ftp_proxy + gopher_proxy + https_proxy + http_proxy + newspost_proxy + newsreply_proxy + news_proxy + nntp_proxy + no_proxy + snewspost_proxy + snewsreply_proxy + snews_proxy + wais_proxy See Lynx Users Guide for additional details and examples. diff --git a/lynx.man b/lynx.man index d5feb3d1..d44a6301 100644 --- a/lynx.man +++ b/lynx.man @@ -1,4 +1,4 @@ -.\" $LynxId: lynx.man,v 1.117 2017/04/28 01:19:42 tom Exp $ +.\" $LynxId: lynx.man,v 1.119 2017/07/04 20:45:52 tom Exp $ .\" ************************************************************************** .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds AQ \(aq @@ -231,6 +231,9 @@ lynx.cfg or \&.lynxrc files. \fILynx\fP tries the cfg-file setting first. .RE .TP +.B \-collapse_br_tags +toggles collapsing of BR tags. +.TP .B \-color forces color mode on, if available. Default color control sequences @@ -900,6 +903,10 @@ is output to a file, intended for indexing. .IP See CRAWL.announce for more information. .TP +.B \-trim_blank_lines +toggles trimming of trailing blank lines as well as +the related trimming of blank lines while collapsing BR tags. +.TP .B \-trim_input_fields trim input text/textarea fields in forms. .TP diff --git a/lynx_help/Lynx_users_guide.html b/lynx_help/Lynx_users_guide.html index c6cb8cb9..ec16953b 100644 --- a/lynx_help/Lynx_users_guide.html +++ b/lynx_help/Lynx_users_guide.html @@ -1,4 +1,4 @@ -<!-- $LynxId: Lynx_users_guide.html,v 1.130 2017/04/28 16:42:13 tom Exp $ --> +<!-- $LynxId: Lynx_users_guide.html,v 1.131 2017/07/04 20:41:58 tom Exp $ --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> @@ -688,7 +688,7 @@ generated at runtime, in which the user fills in choices as in any ordinary HTML form.</p> <pre> - Options Menu (Lynx Version 2.8.8pre.2) + Options Menu (Lynx Version 2.8.9dev.15) Accept Changes - Reset Changes - Left Arrow cancels changes - HELP! @@ -731,6 +731,8 @@ Bad HTML messages (!) : [Warn, point to trace-file] Show images : [ignore___] Verbose images : [OFF__________] + Collapse BR tags (!) : [OFF_____] + Trim blank lines (!) : [trim-lines] Headers Transferred to Remote Servers Personal mail address : __________________________________________ @@ -772,7 +774,7 @@ accessed by setting FORMS_OPTIONS to TRUE in <a href= "#lynx.cfg">lynx.cfg</a>.</p> <pre> - Options Menu (Lynx Version 2.8.8pre.2) + Options Menu (Lynx Version 2.8.9dev.15) (E)ditor : emacs (D)ISPLAY variable : aixtest.cc.ukans.edu:0.0 @@ -908,6 +910,15 @@ [.BM]lynx_bookmarks.html).</p> </dd> + <dt>Collapse BR tags</dt> + + <dd>If <em>Collapse BR tags</em> is turned off, Lynx will not + collapse serial <code>BR</code> tags. If turned on, i.e., + “collapse”, two or more concurrent <code>BR</code>s + will be collapsed into a single line break. Note that the valid + way to insert extra blank lines in HTML is via a + <code>PRE</code> block with only newlines in the block.</dd> + <dt>Cookies</dt> <dd>This option allows you to tell how to handle cookies: @@ -1366,6 +1377,14 @@ prompt, <em>force no-response</em> to reply "no" to each prompt.</dd> + <dt>Trim blank lines</dt> + + <dd>If <em>Trim blank lines</em> is turned off, Lynx will not + trim trailing blank lines from the document. Also, Lynx will + not collapse <code>BR</code>-tags onto the previous line when + it happens to be empty as part of the <em>Collapse BR tags</em> + feature.</dd> + <dt>Type of Search</dt> <dd>Searching type has two possible values: CASE INSENSITIVE diff --git a/po/lynx.pot b/po/lynx.pot index 43687944..1880a1bc 100644 --- a/po/lynx.pot +++ b/po/lynx.pot @@ -1,9 +1,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: lynx 2.8.9dev.10\n" +"Project-Id-Version: lynx 2.8.9dev.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-11-04 13:30-0400\n" +"POT-Creation-Date: 2017-07-04 16:51-0400\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" @@ -2332,7 +2332,7 @@ msgstr "" msgid "(No value.)" msgstr "" -#: LYMessages.c:743 src/LYOptions.c:2428 +#: LYMessages.c:743 src/LYOptions.c:2446 msgid "None" msgstr "" @@ -2846,38 +2846,42 @@ msgstr "" 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 +#: WWW/Library/Implementation/HTAABrow.c:569 +#, c-format +msgid "username for realm %s changed from %s to %s" +msgstr "" + +#: WWW/Library/Implementation/HTAABrow.c:585 +#, c-format +msgid "password for realm %s user %s changed" +msgstr "" + +#: WWW/Library/Implementation/HTAABrow.c:697 #, c-format msgid "Username for '%s' at %s '%s%s':" msgstr "" -#: WWW/Library/Implementation/HTAABrow.c:904 +#: WWW/Library/Implementation/HTAABrow.c:970 msgid "" "This client doesn't know how to compose proxy authorization information for " "scheme" msgstr "" -#: WWW/Library/Implementation/HTAABrow.c:983 +#: WWW/Library/Implementation/HTAABrow.c:1047 msgid "" "This client doesn't know how to compose authorization information for scheme" msgstr "" -#: WWW/Library/Implementation/HTAABrow.c:1094 +#: WWW/Library/Implementation/HTAABrow.c:1156 #, c-format msgid "Invalid header '%s%s%s%s%s'" msgstr "" -#: WWW/Library/Implementation/HTAABrow.c:1200 +#: WWW/Library/Implementation/HTAABrow.c:1260 msgid "Proxy authorization required -- retrying" msgstr "" -#: WWW/Library/Implementation/HTAABrow.c:1256 +#: WWW/Library/Implementation/HTAABrow.c:1316 msgid "Access without authorization denied -- retrying" msgstr "" @@ -2893,7 +2897,7 @@ msgstr "" msgid "Loading failed, use a previous copy." msgstr "" -#: WWW/Library/Implementation/HTAccess.c:1056 src/GridText.c:8874 +#: WWW/Library/Implementation/HTAccess.c:1056 src/GridText.c:8865 msgid "Loading incomplete." msgstr "" @@ -2918,7 +2922,7 @@ msgstr "" #. * hack: if we fail in HTAccess.c #. * avoid duplicating URL, oh. #. -#: WWW/Library/Implementation/HTAccess.c:1096 src/LYMainLoop.c:8074 +#: WWW/Library/Implementation/HTAccess.c:1096 src/LYMainLoop.c:8075 msgid "Can't Access" msgstr "" @@ -2926,37 +2930,37 @@ msgstr "" msgid "Unable to access document." msgstr "" -#: WWW/Library/Implementation/HTFTP.c:875 +#: WWW/Library/Implementation/HTFTP.c:870 #, c-format msgid "Enter password for user %s@%s:" msgstr "" -#: WWW/Library/Implementation/HTFTP.c:903 +#: WWW/Library/Implementation/HTFTP.c:898 msgid "Unable to connect to FTP host." msgstr "" -#: WWW/Library/Implementation/HTFTP.c:1142 +#: WWW/Library/Implementation/HTFTP.c:1137 msgid "close master socket" msgstr "" -#: WWW/Library/Implementation/HTFTP.c:1204 +#: WWW/Library/Implementation/HTFTP.c:1199 msgid "socket for master socket" msgstr "" -#: WWW/Library/Implementation/HTFTP.c:2952 +#: WWW/Library/Implementation/HTFTP.c:2948 msgid "Receiving FTP directory." msgstr "" -#: WWW/Library/Implementation/HTFTP.c:3090 +#: WWW/Library/Implementation/HTFTP.c:3086 #, c-format msgid "Transferred %d bytes (%5d)" msgstr "" -#: WWW/Library/Implementation/HTFTP.c:3448 +#: WWW/Library/Implementation/HTFTP.c:3444 msgid "connect for data" msgstr "" -#: WWW/Library/Implementation/HTFTP.c:4120 +#: WWW/Library/Implementation/HTFTP.c:4126 msgid "Receiving FTP file." msgstr "" @@ -3108,8 +3112,8 @@ msgstr "" msgid "Address length looks invalid" msgstr "" -#: WWW/Library/Implementation/HTTCP.c:1845 -#: WWW/Library/Implementation/HTTCP.c:1863 +#: WWW/Library/Implementation/HTTCP.c:1839 +#: WWW/Library/Implementation/HTTCP.c:1857 #, c-format msgid "Unable to locate remote host %s." msgstr "" @@ -3118,39 +3122,39 @@ msgstr "" #. * but not HTAlert, because typically there will be other #. * alerts from the callers. - kw #. -#: WWW/Library/Implementation/HTTCP.c:1860 +#: WWW/Library/Implementation/HTTCP.c:1854 #: WWW/Library/Implementation/HTTelnet.c:115 #, c-format msgid "Invalid hostname %s" msgstr "" -#: WWW/Library/Implementation/HTTCP.c:1874 +#: WWW/Library/Implementation/HTTCP.c:1868 #, c-format msgid "Making %s connection to %s" msgstr "" -#: WWW/Library/Implementation/HTTCP.c:1885 +#: WWW/Library/Implementation/HTTCP.c:1879 msgid "socket failed." msgstr "" -#: WWW/Library/Implementation/HTTCP.c:1899 +#: WWW/Library/Implementation/HTTCP.c:1893 #, c-format msgid "socket failed: family %d addr %s port %s." msgstr "" -#: WWW/Library/Implementation/HTTCP.c:1923 +#: WWW/Library/Implementation/HTTCP.c:1917 msgid "Could not make connection non-blocking." msgstr "" -#: WWW/Library/Implementation/HTTCP.c:1991 +#: WWW/Library/Implementation/HTTCP.c:1985 msgid "Connection failed (too many retries)." msgstr "" -#: WWW/Library/Implementation/HTTCP.c:2180 +#: WWW/Library/Implementation/HTTCP.c:2174 msgid "Could not restore socket to blocking." msgstr "" -#: WWW/Library/Implementation/HTTCP.c:2248 +#: WWW/Library/Implementation/HTTCP.c:2242 msgid "Socket read failed (too many tries)." msgstr "" @@ -3159,110 +3163,105 @@ msgstr "" msgid "SSL callback:%s, preverify_ok=%d, ssl_okay=%d" msgstr "" -#: WWW/Library/Implementation/HTTP.c:584 +#: WWW/Library/Implementation/HTTP.c:629 #, c-format msgid "User/password contains only punctuation: %s" msgstr "" -#: WWW/Library/Implementation/HTTP.c:588 +#: WWW/Library/Implementation/HTTP.c:633 #, c-format msgid "User/password may be confused with hostname: '%s' (e.g, '%s')" msgstr "" -#: WWW/Library/Implementation/HTTP.c:592 -#, c-format -msgid "User/password may appear to be a hostname: '%s' (e.g, '%s')" -msgstr "" - -#: WWW/Library/Implementation/HTTP.c:650 +#: WWW/Library/Implementation/HTTP.c:694 #, c-format msgid "Certificate issued by: %s" msgstr "" -#: WWW/Library/Implementation/HTTP.c:837 +#: WWW/Library/Implementation/HTTP.c:881 msgid "This client does not contain support for HTTPS URLs." msgstr "" -#: WWW/Library/Implementation/HTTP.c:862 +#: WWW/Library/Implementation/HTTP.c:906 msgid "Unable to connect to remote host." msgstr "" -#: WWW/Library/Implementation/HTTP.c:905 +#: WWW/Library/Implementation/HTTP.c:953 msgid "Retrying connection without TLS." msgstr "" -#: WWW/Library/Implementation/HTTP.c:957 +#: WWW/Library/Implementation/HTTP.c:1005 msgid "GnuTLS error when trying to verify certificate." msgstr "" -#: WWW/Library/Implementation/HTTP.c:970 +#: WWW/Library/Implementation/HTTP.c:1018 msgid "the certificate has no known issuer" msgstr "" -#: WWW/Library/Implementation/HTTP.c:972 +#: WWW/Library/Implementation/HTTP.c:1020 msgid "no issuer was found" msgstr "" -#: WWW/Library/Implementation/HTTP.c:974 +#: WWW/Library/Implementation/HTTP.c:1022 msgid "issuer is not a CA" msgstr "" -#: WWW/Library/Implementation/HTTP.c:976 +#: WWW/Library/Implementation/HTTP.c:1024 msgid "the certificate has been revoked" msgstr "" -#: WWW/Library/Implementation/HTTP.c:978 +#: WWW/Library/Implementation/HTTP.c:1026 msgid "the certificate is not trusted" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1053 +#: WWW/Library/Implementation/HTTP.c:1101 #, c-format msgid "Verified connection to %s (cert=%s)" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1103 -#: WWW/Library/Implementation/HTTP.c:1145 +#: WWW/Library/Implementation/HTTP.c:1151 +#: WWW/Library/Implementation/HTTP.c:1193 #, c-format msgid "Verified connection to %s (subj=%s)" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1175 +#: WWW/Library/Implementation/HTTP.c:1223 msgid "Can't find common name in certificate" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1178 +#: WWW/Library/Implementation/HTTP.c:1226 #, c-format msgid "SSL error:host(%s)!=cert(%s)-Continue?" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1185 +#: WWW/Library/Implementation/HTTP.c:1233 msgid "SSL error" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1193 +#: WWW/Library/Implementation/HTTP.c:1241 #, c-format msgid "UNVERIFIED connection to %s (cert=%s)" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1202 +#: WWW/Library/Implementation/HTTP.c:1250 #, c-format msgid "Secure %d-bit %s (%s) HTTP connection" msgstr "" -#: WWW/Library/Implementation/HTTP.c:1670 +#: WWW/Library/Implementation/HTTP.c:1718 msgid "Sending HTTP request." msgstr "" -#: WWW/Library/Implementation/HTTP.c:1712 +#: WWW/Library/Implementation/HTTP.c:1760 msgid "Unexpected network write error; connection aborted." msgstr "" -#: WWW/Library/Implementation/HTTP.c:1718 +#: WWW/Library/Implementation/HTTP.c:1766 msgid "HTTP request sent; waiting for response." msgstr "" -#: WWW/Library/Implementation/HTTP.c:1791 -#: WWW/Library/Implementation/HTTP.c:1801 +#: WWW/Library/Implementation/HTTP.c:1839 +#: WWW/Library/Implementation/HTTP.c:1849 msgid "Unexpected network read error; connection aborted." msgstr "" @@ -3275,7 +3274,7 @@ msgstr "" #. * 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:2003 +#: WWW/Library/Implementation/HTTP.c:2051 msgid "Got unexpected Informational Status." msgstr "" @@ -3285,7 +3284,7 @@ msgstr "" #. * content. We'll instruct the user to do that, and #. * restore the current document. - FM #. -#: WWW/Library/Implementation/HTTP.c:2037 +#: WWW/Library/Implementation/HTTP.c:2085 msgid "Request fulfilled. Reset Content." msgstr "" @@ -3295,27 +3294,27 @@ msgstr "" #. * 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:2154 +#: WWW/Library/Implementation/HTTP.c:2202 msgid "Got unexpected 304 Not Modified status." msgstr "" -#: WWW/Library/Implementation/HTTP.c:2217 +#: WWW/Library/Implementation/HTTP.c:2265 msgid "Redirection of POST content requires user approval." msgstr "" -#: WWW/Library/Implementation/HTTP.c:2232 +#: WWW/Library/Implementation/HTTP.c:2280 msgid "Have POST content. Treating Permanent Redirection as Temporary.\n" msgstr "" -#: WWW/Library/Implementation/HTTP.c:2276 +#: WWW/Library/Implementation/HTTP.c:2326 msgid "Retrying with access authorization information." msgstr "" -#: WWW/Library/Implementation/HTTP.c:2288 +#: WWW/Library/Implementation/HTTP.c:2338 msgid "Show the 401 message body?" msgstr "" -#: WWW/Library/Implementation/HTTP.c:2332 +#: WWW/Library/Implementation/HTTP.c:2382 msgid "Show the 407 message body?" msgstr "" @@ -3323,7 +3322,7 @@ msgstr "" #. * Bad or unknown server_status number. Take a chance and hope #. * there is something to display. - FM #. -#: WWW/Library/Implementation/HTTP.c:2432 +#: WWW/Library/Implementation/HTTP.c:2482 msgid "Unknown status reply from server!" msgstr "" @@ -3509,98 +3508,98 @@ msgstr "" msgid "Memory exhausted, will interrupt transfer!" msgstr "" -#: src/GridText.c:3674 +#: src/GridText.c:3666 msgid " *** MEMORY EXHAUSTED ***" msgstr "" -#: src/GridText.c:6152 +#: src/GridText.c:6144 msgid "text entry field" msgstr "" -#: src/GridText.c:6155 +#: src/GridText.c:6147 msgid "password entry field" msgstr "" -#: src/GridText.c:6158 +#: src/GridText.c:6150 msgid "checkbox" msgstr "" -#: src/GridText.c:6161 +#: src/GridText.c:6153 msgid "radio button" msgstr "" -#: src/GridText.c:6164 +#: src/GridText.c:6156 msgid "submit button" msgstr "" -#: src/GridText.c:6167 +#: src/GridText.c:6159 msgid "reset button" msgstr "" -#: src/GridText.c:6170 +#: src/GridText.c:6162 msgid "script button" msgstr "" -#: src/GridText.c:6173 +#: src/GridText.c:6165 msgid "popup menu" msgstr "" -#: src/GridText.c:6176 +#: src/GridText.c:6168 msgid "hidden form field" msgstr "" -#: src/GridText.c:6179 +#: src/GridText.c:6171 msgid "text entry area" msgstr "" -#: src/GridText.c:6182 +#: src/GridText.c:6174 msgid "range entry field" msgstr "" -#: src/GridText.c:6185 +#: src/GridText.c:6177 msgid "file entry field" msgstr "" -#: src/GridText.c:6188 +#: src/GridText.c:6180 msgid "text-submit field" msgstr "" -#: src/GridText.c:6191 +#: src/GridText.c:6183 msgid "image-submit button" msgstr "" -#: src/GridText.c:6194 +#: src/GridText.c:6186 msgid "keygen field" msgstr "" -#: src/GridText.c:6197 +#: src/GridText.c:6189 msgid "unknown form field" msgstr "" -#: src/GridText.c:6217 src/GridText.c:6224 src/LYList.c:249 +#: src/GridText.c:6209 src/GridText.c:6216 src/LYList.c:249 msgid "unknown field or link" msgstr "" -#: src/GridText.c:10649 +#: src/GridText.c:10633 msgid "Can't open file for uploading" msgstr "" -#: src/GridText.c:11842 +#: src/GridText.c:11821 #, c-format msgid "Submitting %s" msgstr "" #. ugliness has happened; inform user and do the best we can -#: src/GridText.c:12918 +#: src/GridText.c:12891 msgid "Hang Detect: TextAnchor struct corrupted - suggest aborting!" msgstr "" #. don't show previous state -#: src/GridText.c:13082 +#: src/GridText.c:13050 msgid "Wrap lines to fit displayed area?" msgstr "" -#: src/GridText.c:13718 +#: src/GridText.c:13680 msgid "Very long lines have been truncated!" msgstr "" @@ -3690,27 +3689,27 @@ msgstr "" #. * (Y/N/Always/neVer) - English (original) #. * (O/N/Toujours/Jamais) - French #. -#: src/HTAlert.c:940 +#: src/HTAlert.c:938 msgid "Y/N/A/V" msgstr "" -#: src/HTML.c:5931 +#: src/HTML.c:5932 msgid "Description:" msgstr "" -#: src/HTML.c:5936 +#: src/HTML.c:5937 msgid "(none)" msgstr "" -#: src/HTML.c:5940 +#: src/HTML.c:5941 msgid "Filepath:" msgstr "" -#: src/HTML.c:5946 +#: src/HTML.c:5947 msgid "(unknown)" msgstr "" -#: src/HTML.c:7386 +#: src/HTML.c:7387 msgid "Document has only hidden links. Use the 'l'ist command." msgstr "" @@ -3763,7 +3762,7 @@ msgstr "" msgid "File may be recoverable from %s during this session" msgstr "" -#: src/LYCgi.c:162 +#: src/LYCgi.c:161 #, c-format msgid "Do you want to execute \"%s\"?" msgstr "" @@ -3772,23 +3771,23 @@ msgstr "" #. * Neither the path as given nor any components examined by backing up #. * were stat()able. - kw #. -#: src/LYCgi.c:277 +#: src/LYCgi.c:276 msgid "Unable to access cgi script" msgstr "" -#: src/LYCgi.c:711 src/LYCgi.c:714 +#: src/LYCgi.c:709 src/LYCgi.c:712 msgid "Good Advice" msgstr "" -#: src/LYCgi.c:718 +#: src/LYCgi.c:716 msgid "An excellent http server for VMS is available via" msgstr "" -#: src/LYCgi.c:725 +#: src/LYCgi.c:723 msgid "this link" msgstr "" -#: src/LYCgi.c:729 +#: src/LYCgi.c:727 msgid "It provides state of the art CGI script support.\n" msgstr "" @@ -3796,19 +3795,19 @@ msgstr "" msgid "Exiting via interrupt:" msgstr "" -#: src/LYCookie.c:2541 +#: src/LYCookie.c:2537 msgid "(from a previous session)" msgstr "" -#: src/LYCookie.c:2602 +#: src/LYCookie.c:2598 msgid "Maximum Gobble Date:" msgstr "" -#: src/LYCookie.c:2641 +#: src/LYCookie.c:2637 msgid "Internal" msgstr "" -#: src/LYCookie.c:2642 +#: src/LYCookie.c:2638 msgid "cookie_domain_flag_set error, aborting program" msgstr "" @@ -3820,34 +3819,34 @@ msgstr "" msgid "Terminal initialisation failed - unknown terminal type?" msgstr "" -#: src/LYCurses.c:1863 +#: src/LYCurses.c:1869 msgid "Terminal =" msgstr "" -#: src/LYCurses.c:1867 +#: src/LYCurses.c:1873 msgid "You must use a vt100, 200, etc. terminal with this program." msgstr "" -#: src/LYCurses.c:1916 +#: src/LYCurses.c:1922 msgid "Your Terminal type is unknown!" msgstr "" -#: src/LYCurses.c:1917 +#: src/LYCurses.c:1923 msgid "Enter a terminal type:" msgstr "" -#: src/LYCurses.c:1931 +#: src/LYCurses.c:1937 msgid "TERMINAL TYPE IS SET TO" msgstr "" -#: src/LYCurses.c:2483 +#: src/LYCurses.c:2491 #, c-format msgid "" "\n" "A Fatal error has occurred in %s Ver. %s\n" msgstr "" -#: src/LYCurses.c:2486 +#: src/LYCurses.c:2494 #, c-format msgid "" "\n" @@ -3908,31 +3907,31 @@ msgstr "" msgid "No Name Given" msgstr "" -#: src/LYHistory.c:680 +#: src/LYHistory.c:676 msgid "You selected:" msgstr "" -#: src/LYHistory.c:704 src/LYHistory.c:933 +#: src/LYHistory.c:700 src/LYHistory.c:929 msgid "(no address)" msgstr "" -#: src/LYHistory.c:708 +#: src/LYHistory.c:704 msgid " (internal)" msgstr "" -#: src/LYHistory.c:710 +#: src/LYHistory.c:706 msgid " (was internal)" msgstr "" -#: src/LYHistory.c:808 +#: src/LYHistory.c:804 msgid " (From History)" msgstr "" -#: src/LYHistory.c:853 +#: src/LYHistory.c:849 msgid "You visited (POSTs, bookmark, menu and list files excluded):" msgstr "" -#: src/LYHistory.c:1155 +#: src/LYHistory.c:1151 msgid "(No messages yet)" msgstr "" @@ -4272,7 +4271,7 @@ msgstr "" msgid "Installation complete" msgstr "" -#: src/LYLocal.c:2680 +#: src/LYLocal.c:2678 msgid "Temporary URL or list would be too long." msgstr "" @@ -4311,19 +4310,19 @@ msgstr "" msgid "No system mailer configured" msgstr "" -#: src/LYMain.c:1073 +#: src/LYMain.c:1074 msgid "No Winsock found, sorry." msgstr "" -#: src/LYMain.c:1264 +#: src/LYMain.c:1265 msgid "You MUST define a valid TMP or TEMP area!" msgstr "" -#: src/LYMain.c:1317 src/LYMainLoop.c:5283 +#: src/LYMain.c:1318 src/LYMainLoop.c:5284 msgid "No such directory" msgstr "" -#: src/LYMain.c:1511 +#: src/LYMain.c:1512 #, c-format msgid "" "\n" @@ -4331,7 +4330,7 @@ msgid "" "\n" msgstr "" -#: src/LYMain.c:1521 +#: src/LYMain.c:1522 #, c-format msgid "" "\n" @@ -4339,68 +4338,68 @@ msgid "" "\n" msgstr "" -#: src/LYMain.c:1677 +#: src/LYMain.c:1678 #, c-format msgid "Ignored %d characters from standard input.\n" msgstr "" -#: src/LYMain.c:1679 +#: src/LYMain.c:1680 #, c-format msgid "Use \"-stdin\" or \"-\" to tell how to handle piped input.\n" msgstr "" -#: src/LYMain.c:1837 +#: src/LYMain.c:1838 msgid "Warning:" msgstr "" -#: src/LYMain.c:2407 +#: src/LYMain.c:2408 msgid "persistent cookies state will be changed in next session only." msgstr "" -#: src/LYMain.c:2644 src/LYMain.c:2689 +#: src/LYMain.c:2645 src/LYMain.c:2690 #, c-format msgid "Lynx: ignoring unrecognized charset=%s\n" msgstr "" -#: src/LYMain.c:3208 +#: src/LYMain.c:3209 #, c-format msgid "%s Version %s (%s)" msgstr "" -#: src/LYMain.c:3249 +#: src/LYMain.c:3250 #, c-format msgid "Built on %s%s.\n" msgstr "" -#: src/LYMain.c:3263 +#: src/LYMain.c:3264 msgid "Copyrights held by the Lynx Developers Group," msgstr "" -#: src/LYMain.c:3264 +#: src/LYMain.c:3265 msgid "the University of Kansas, CERN, and other contributors." msgstr "" -#: src/LYMain.c:3265 +#: src/LYMain.c:3266 msgid "Distributed under the GNU General Public License (Version 2)." msgstr "" -#: src/LYMain.c:3266 +#: src/LYMain.c:3267 msgid "" "See http://lynx.invisible-island.net/ and the online help for more " "information." msgstr "" -#: src/LYMain.c:4109 +#: src/LYMain.c:4118 #, c-format msgid "USAGE: %s [options] [file]\n" msgstr "" -#: src/LYMain.c:4110 +#: src/LYMain.c:4119 #, c-format msgid "Options are:\n" msgstr "" -#: src/LYMain.c:4413 +#: src/LYMain.c:4422 #, c-format msgid "%s: Invalid Option: %s\n" msgstr "" @@ -4410,7 +4409,7 @@ msgstr "" msgid "Internal error: Invalid mouse link %d!" msgstr "" -#: src/LYMainLoop.c:693 src/LYMainLoop.c:5305 +#: src/LYMainLoop.c:693 src/LYMainLoop.c:5306 msgid "A URL specified by the user" msgstr "" @@ -4429,89 +4428,89 @@ msgstr "" msgid "System Index" msgstr "" -#: src/LYMainLoop.c:3575 +#: src/LYMainLoop.c:3576 #, c-format msgid "Query parameter %d: " msgstr "" -#: src/LYMainLoop.c:3804 src/LYMainLoop.c:5581 +#: src/LYMainLoop.c:3805 src/LYMainLoop.c:5582 msgid "Entry into main screen" msgstr "" -#: src/LYMainLoop.c:4062 +#: src/LYMainLoop.c:4063 msgid "No next document present" msgstr "" -#: src/LYMainLoop.c:4357 +#: src/LYMainLoop.c:4358 msgid "charset for this document specified explicitly, sorry..." msgstr "" -#: src/LYMainLoop.c:5263 +#: src/LYMainLoop.c:5264 msgid "cd to:" msgstr "" -#: src/LYMainLoop.c:5286 +#: src/LYMainLoop.c:5287 msgid "A component of path is not a directory" msgstr "" -#: src/LYMainLoop.c:5289 +#: src/LYMainLoop.c:5290 msgid "failed to change directory" msgstr "" -#: src/LYMainLoop.c:6515 +#: src/LYMainLoop.c:6516 msgid "Reparsing document under current settings..." msgstr "" -#: src/LYMainLoop.c:6809 +#: src/LYMainLoop.c:6810 #, c-format msgid "Fatal error - could not open output file %s\n" msgstr "" -#: src/LYMainLoop.c:7151 +#: src/LYMainLoop.c:7152 msgid "TABLE center enable." msgstr "" -#: src/LYMainLoop.c:7154 +#: src/LYMainLoop.c:7155 msgid "TABLE center disable." msgstr "" -#: src/LYMainLoop.c:7234 +#: src/LYMainLoop.c:7235 msgid "Current URL is empty." msgstr "" -#: src/LYMainLoop.c:7236 src/LYUtils.c:1917 +#: src/LYMainLoop.c:7237 src/LYUtils.c:1915 msgid "Copy to clipboard failed." msgstr "" -#: src/LYMainLoop.c:7238 +#: src/LYMainLoop.c:7239 msgid "Document URL put to clipboard." msgstr "" -#: src/LYMainLoop.c:7240 +#: src/LYMainLoop.c:7241 msgid "Link URL put to clipboard." msgstr "" -#: src/LYMainLoop.c:7267 +#: src/LYMainLoop.c:7268 msgid "No URL in the clipboard." msgstr "" -#: src/LYMainLoop.c:7960 src/LYMainLoop.c:8131 +#: src/LYMainLoop.c:7961 src/LYMainLoop.c:8132 msgid "-index-" msgstr "" -#: src/LYMainLoop.c:8069 +#: src/LYMainLoop.c:8070 msgid "lynx: Can't access startfile" msgstr "" -#: src/LYMainLoop.c:8081 +#: src/LYMainLoop.c:8082 msgid "lynx: Start file could not be found or is not text/html or text/plain" msgstr "" -#: src/LYMainLoop.c:8082 +#: src/LYMainLoop.c:8083 msgid " Exiting..." msgstr "" -#: src/LYMainLoop.c:8125 +#: src/LYMainLoop.c:8126 msgid "-more-" msgstr "" @@ -4576,8 +4575,10 @@ msgid "ON" msgstr "" #. verbose_img variable +#. LYCollapseBRs variable +#. LYtrimBlankLines variable #: src/LYOptions.c:2128 src/LYOptions.c:2133 src/LYOptions.c:2306 -#: src/LYOptions.c:2317 +#: src/LYOptions.c:2315 src/LYOptions.c:2324 src/LYOptions.c:2335 msgid "OFF" msgstr "" @@ -4718,235 +4719,243 @@ msgstr "" msgid "show filename" msgstr "" -#: src/LYOptions.c:2318 +#: src/LYOptions.c:2316 +msgid "collapse" +msgstr "" + +#: src/LYOptions.c:2325 +msgid "trim-lines" +msgstr "" + +#: src/LYOptions.c:2336 msgid "STANDARD" msgstr "" -#: src/LYOptions.c:2319 +#: src/LYOptions.c:2337 msgid "ADVANCED" msgstr "" -#: src/LYOptions.c:2353 +#: src/LYOptions.c:2371 msgid "Directories first" msgstr "" -#: src/LYOptions.c:2354 +#: src/LYOptions.c:2372 msgid "Files first" msgstr "" -#: src/LYOptions.c:2355 +#: src/LYOptions.c:2373 msgid "Mixed style" msgstr "" -#: src/LYOptions.c:2363 src/LYOptions.c:2383 +#: src/LYOptions.c:2381 src/LYOptions.c:2401 msgid "By Name" msgstr "" -#: src/LYOptions.c:2364 src/LYOptions.c:2384 +#: src/LYOptions.c:2382 src/LYOptions.c:2402 msgid "By Type" msgstr "" -#: src/LYOptions.c:2365 src/LYOptions.c:2385 +#: src/LYOptions.c:2383 src/LYOptions.c:2403 msgid "By Size" msgstr "" -#: src/LYOptions.c:2366 src/LYOptions.c:2386 +#: src/LYOptions.c:2384 src/LYOptions.c:2404 msgid "By Date" msgstr "" -#: src/LYOptions.c:2367 +#: src/LYOptions.c:2385 msgid "By Mode" msgstr "" -#: src/LYOptions.c:2369 +#: src/LYOptions.c:2387 msgid "By User" msgstr "" -#: src/LYOptions.c:2370 +#: src/LYOptions.c:2388 msgid "By Group" msgstr "" -#: src/LYOptions.c:2395 +#: src/LYOptions.c:2413 msgid "Do not show rate" msgstr "" -#: src/LYOptions.c:2396 src/LYOptions.c:2397 +#: src/LYOptions.c:2414 src/LYOptions.c:2415 #, c-format msgid "Show %s/sec rate" msgstr "" -#: src/LYOptions.c:2399 src/LYOptions.c:2400 +#: src/LYOptions.c:2417 src/LYOptions.c:2418 #, c-format msgid "Show %s/sec, ETA" msgstr "" -#: src/LYOptions.c:2401 src/LYOptions.c:2402 +#: src/LYOptions.c:2419 src/LYOptions.c:2420 #, c-format msgid "Show %s/sec (2-digits), ETA" msgstr "" -#: src/LYOptions.c:2405 +#: src/LYOptions.c:2423 msgid "Show progressbar" msgstr "" -#: src/LYOptions.c:2417 +#: src/LYOptions.c:2435 msgid "Accept lynx's internal types" msgstr "" -#: src/LYOptions.c:2418 +#: src/LYOptions.c:2436 msgid "Also accept lynx.cfg's types" msgstr "" -#: src/LYOptions.c:2419 +#: src/LYOptions.c:2437 msgid "Also accept user's types" msgstr "" -#: src/LYOptions.c:2420 +#: src/LYOptions.c:2438 msgid "Also accept system's types" msgstr "" -#: src/LYOptions.c:2421 +#: src/LYOptions.c:2439 msgid "Accept all types" msgstr "" -#: src/LYOptions.c:2430 +#: src/LYOptions.c:2448 msgid "gzip" msgstr "" -#: src/LYOptions.c:2431 +#: src/LYOptions.c:2449 msgid "deflate" msgstr "" -#: src/LYOptions.c:2434 +#: src/LYOptions.c:2452 msgid "compress" msgstr "" -#: src/LYOptions.c:2437 +#: src/LYOptions.c:2455 msgid "bzip2" msgstr "" -#: src/LYOptions.c:2439 +#: src/LYOptions.c:2457 msgid "All" msgstr "" -#: src/LYOptions.c:2449 +#: src/LYOptions.c:2467 msgid "HTTP 1.0" msgstr "" -#: src/LYOptions.c:2450 +#: src/LYOptions.c:2468 msgid "HTTP 1.1" msgstr "" -#: src/LYOptions.c:2813 src/LYOptions.c:2842 +#: src/LYOptions.c:2827 src/LYOptions.c:2856 #, c-format msgid "Use %s to invoke the Options menu!" msgstr "" -#: src/LYOptions.c:3707 +#: src/LYOptions.c:3739 msgid "(options marked with (!) will not be saved)" msgstr "" -#: src/LYOptions.c:3715 +#: src/LYOptions.c:3747 msgid "General Preferences" msgstr "" #. *************************************************************** #. User Mode: SELECT -#: src/LYOptions.c:3719 +#: src/LYOptions.c:3751 msgid "User mode" msgstr "" #. Editor: INPUT -#: src/LYOptions.c:3725 +#: src/LYOptions.c:3757 msgid "Editor" msgstr "" #. Search Type: SELECT -#: src/LYOptions.c:3730 +#: src/LYOptions.c:3762 msgid "Type of Search" msgstr "" -#: src/LYOptions.c:3735 +#: src/LYOptions.c:3767 msgid "Security and Privacy" msgstr "" #. *************************************************************** #. Cookies: SELECT -#: src/LYOptions.c:3739 +#: src/LYOptions.c:3771 msgid "Cookies" msgstr "" #. Cookie Prompting: SELECT -#: src/LYOptions.c:3753 +#: src/LYOptions.c:3785 msgid "Invalid-Cookie Prompting" msgstr "" #. SSL Prompting: SELECT -#: src/LYOptions.c:3760 +#: src/LYOptions.c:3792 msgid "SSL Prompting" msgstr "" -#: src/LYOptions.c:3765 +#: src/LYOptions.c:3797 msgid "SSL client certificate file" msgstr "" -#: src/LYOptions.c:3769 +#: src/LYOptions.c:3801 msgid "SSL client key file" msgstr "" -#: src/LYOptions.c:3775 +#: src/LYOptions.c:3807 msgid "Keyboard Input" msgstr "" #. *************************************************************** #. Keypad Mode: SELECT -#: src/LYOptions.c:3779 +#: src/LYOptions.c:3811 msgid "Keypad mode" msgstr "" #. Emacs keys: ON/OFF -#: src/LYOptions.c:3785 +#: src/LYOptions.c:3817 msgid "Emacs keys" msgstr "" #. VI Keys: ON/OFF -#: src/LYOptions.c:3791 +#: src/LYOptions.c:3823 msgid "VI keys" msgstr "" #. Line edit style: SELECT #. well, at least 2 line edit styles available -#: src/LYOptions.c:3798 +#: src/LYOptions.c:3830 msgid "Line edit style" msgstr "" #. Keyboard layout: SELECT -#: src/LYOptions.c:3810 +#: src/LYOptions.c:3842 msgid "Keyboard layout" msgstr "" #. #. * Display and Character Set #. -#: src/LYOptions.c:3824 +#: src/LYOptions.c:3856 msgid "Display and Character Set" msgstr "" #. Use locale-based character set: ON/OFF -#: src/LYOptions.c:3829 +#: src/LYOptions.c:3861 msgid "Use locale-based character set" msgstr "" -#: src/LYOptions.c:3836 +#: src/LYOptions.c:3868 msgid "Use HTML5 charset replacements" msgstr "" #. Display Character Set: SELECT -#: src/LYOptions.c:3842 +#: src/LYOptions.c:3874 msgid "Display character set" msgstr "" -#: src/LYOptions.c:3873 +#: src/LYOptions.c:3905 msgid "Assumed document character set" msgstr "" @@ -4955,216 +4964,226 @@ msgstr "" #. * we split the header to make it more readable: #. * "CJK mode" for CJK display charsets, and "Raw 8-bit" for others. #. -#: src/LYOptions.c:3893 +#: src/LYOptions.c:3925 msgid "CJK mode" msgstr "" -#: src/LYOptions.c:3895 +#: src/LYOptions.c:3927 msgid "Raw 8-bit" msgstr "" #. X Display: INPUT -#: src/LYOptions.c:3903 +#: src/LYOptions.c:3935 msgid "X Display" msgstr "" #. #. * Document Appearance #. -#: src/LYOptions.c:3909 +#: src/LYOptions.c:3941 msgid "Document Appearance" msgstr "" -#: src/LYOptions.c:3915 +#: src/LYOptions.c:3947 msgid "Show color" msgstr "" #. Color style: ON/OFF -#: src/LYOptions.c:3940 +#: src/LYOptions.c:3972 msgid "Color style" msgstr "" -#: src/LYOptions.c:3949 +#: src/LYOptions.c:3981 msgid "Default colors" msgstr "" #. Show cursor: ON/OFF -#: src/LYOptions.c:3957 +#: src/LYOptions.c:3989 msgid "Show cursor" msgstr "" #. Underline links: ON/OFF -#: src/LYOptions.c:3963 +#: src/LYOptions.c:3995 msgid "Underline links" msgstr "" #. Show scrollbar: ON/OFF -#: src/LYOptions.c:3970 +#: src/LYOptions.c:4002 msgid "Show scrollbar" msgstr "" #. Select Popups: ON/OFF -#: src/LYOptions.c:3977 +#: src/LYOptions.c:4009 msgid "Popups for select fields" msgstr "" #. HTML error recovery: SELECT -#: src/LYOptions.c:3983 +#: src/LYOptions.c:4015 msgid "HTML error recovery" msgstr "" #. Bad HTML messages: SELECT -#: src/LYOptions.c:3989 +#: src/LYOptions.c:4021 msgid "Bad HTML messages" msgstr "" #. Show Images: SELECT -#: src/LYOptions.c:3995 +#: src/LYOptions.c:4027 msgid "Show images" msgstr "" #. Verbose Images: ON/OFF -#: src/LYOptions.c:4009 +#: src/LYOptions.c:4041 msgid "Verbose images" msgstr "" +#. Collapse BR Tags: ON/OFF +#: src/LYOptions.c:4047 +msgid "Collapse BR tags" +msgstr "" + +#. Trim blank lines: ON/OFF +#: src/LYOptions.c:4053 +msgid "Trim blank lines" +msgstr "" + #. #. * Headers Transferred to Remote Servers #. -#: src/LYOptions.c:4017 +#: src/LYOptions.c:4061 msgid "Headers Transferred to Remote Servers" msgstr "" #. *************************************************************** #. Mail Address: INPUT -#: src/LYOptions.c:4021 +#: src/LYOptions.c:4065 msgid "Personal mail address" msgstr "" -#: src/LYOptions.c:4026 +#: src/LYOptions.c:4070 msgid "Personal name for mail" msgstr "" -#: src/LYOptions.c:4033 +#: src/LYOptions.c:4077 msgid "Password for anonymous ftp" msgstr "" #. Preferred media type: SELECT -#: src/LYOptions.c:4039 +#: src/LYOptions.c:4083 msgid "Preferred media type" msgstr "" #. Preferred encoding: SELECT -#: src/LYOptions.c:4045 +#: src/LYOptions.c:4089 msgid "Preferred encoding" msgstr "" #. Preferred Document Character Set: INPUT -#: src/LYOptions.c:4051 +#: src/LYOptions.c:4095 msgid "Preferred document character set" msgstr "" #. Preferred Document Language: INPUT -#: src/LYOptions.c:4056 +#: src/LYOptions.c:4100 msgid "Preferred document language" msgstr "" #. HTTP protocol SELECT -#: src/LYOptions.c:4061 +#: src/LYOptions.c:4105 msgid "HTTP protocol" msgstr "" -#: src/LYOptions.c:4068 +#: src/LYOptions.c:4112 msgid "Send User-Agent header" msgstr "" -#: src/LYOptions.c:4070 +#: src/LYOptions.c:4114 msgid "User-Agent header" msgstr "" #. #. * Listing and Accessing Files #. -#: src/LYOptions.c:4078 +#: src/LYOptions.c:4122 msgid "Listing and Accessing Files" msgstr "" #. FTP sort: SELECT -#: src/LYOptions.c:4083 +#: src/LYOptions.c:4127 msgid "Use Passive FTP" msgstr "" #. FTP sort: SELECT -#: src/LYOptions.c:4089 +#: src/LYOptions.c:4133 msgid "FTP sort criteria" msgstr "" #. Local Directory Sort: SELECT -#: src/LYOptions.c:4097 +#: src/LYOptions.c:4141 msgid "Local directory sort criteria" msgstr "" #. Local Directory Order: SELECT -#: src/LYOptions.c:4103 +#: src/LYOptions.c:4147 msgid "Local directory sort order" msgstr "" -#: src/LYOptions.c:4112 +#: src/LYOptions.c:4156 msgid "Show dot files" msgstr "" -#: src/LYOptions.c:4120 +#: src/LYOptions.c:4164 msgid "Execution links" msgstr "" -#: src/LYOptions.c:4138 +#: src/LYOptions.c:4182 msgid "Pause when showing message" msgstr "" #. Show transfer rate: SELECT -#: src/LYOptions.c:4145 +#: src/LYOptions.c:4189 msgid "Show transfer rate" msgstr "" #. #. * Special Files and Screens #. -#: src/LYOptions.c:4165 +#: src/LYOptions.c:4209 msgid "Special Files and Screens" msgstr "" -#: src/LYOptions.c:4170 +#: src/LYOptions.c:4214 msgid "Multi-bookmarks" msgstr "" -#: src/LYOptions.c:4178 +#: src/LYOptions.c:4222 msgid "Review/edit Bookmarks files" msgstr "" -#: src/LYOptions.c:4181 +#: src/LYOptions.c:4225 msgid "Goto multi-bookmark menu" msgstr "" -#: src/LYOptions.c:4183 +#: src/LYOptions.c:4227 msgid "Bookmarks file" msgstr "" #. Auto Session: ON/OFF -#: src/LYOptions.c:4190 +#: src/LYOptions.c:4234 msgid "Auto Session" msgstr "" #. Session File Menu: INPUT -#: src/LYOptions.c:4196 +#: src/LYOptions.c:4240 msgid "Session file" msgstr "" #. Visited Pages: SELECT -#: src/LYOptions.c:4202 +#: src/LYOptions.c:4246 msgid "Visited Pages" msgstr "" -#: src/LYOptions.c:4207 +#: src/LYOptions.c:4251 msgid "View the file " msgstr "" @@ -5229,7 +5248,7 @@ msgstr "" msgid "Print out on a printer attached to your vt100 terminal" msgstr "" -#: src/LYReadCFG.c:441 +#: src/LYReadCFG.c:437 #, c-format msgid "" "Syntax Error parsing COLOR in configuration file:\n" @@ -5240,77 +5259,77 @@ msgid "" "The special strings 'nocolor' or 'default', or\n" msgstr "" -#: src/LYReadCFG.c:454 +#: src/LYReadCFG.c:450 msgid "Offending line:" msgstr "" -#: src/LYReadCFG.c:774 +#: src/LYReadCFG.c:764 #, c-format msgid "key remapping of %s to %s for %s failed\n" msgstr "" -#: src/LYReadCFG.c:781 +#: src/LYReadCFG.c:771 #, c-format msgid "key remapping of %s to %s failed\n" msgstr "" -#: src/LYReadCFG.c:802 +#: src/LYReadCFG.c:792 #, c-format msgid "invalid line-editor selection %s for key %s, selecting all\n" msgstr "" -#: src/LYReadCFG.c:827 src/LYReadCFG.c:839 +#: src/LYReadCFG.c:817 src/LYReadCFG.c:829 #, c-format msgid "" "setting of line-editor binding for key %s (0x%x) to 0x%x for %s failed\n" msgstr "" -#: src/LYReadCFG.c:843 +#: src/LYReadCFG.c:833 #, c-format msgid "setting of line-editor binding for key %s (0x%x) for %s failed\n" msgstr "" -#: src/LYReadCFG.c:939 +#: src/LYReadCFG.c:929 #, c-format msgid "Lynx: cannot start, CERN rules file %s is not available\n" msgstr "" -#: src/LYReadCFG.c:940 +#: src/LYReadCFG.c:930 msgid "(no name)" msgstr "" -#: src/LYReadCFG.c:2081 +#: src/LYReadCFG.c:2070 #, c-format msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n" msgstr "" -#: src/LYReadCFG.c:2083 +#: src/LYReadCFG.c:2072 #, c-format msgid "Last attempted include was '%s',\n" msgstr "" -#: src/LYReadCFG.c:2084 +#: src/LYReadCFG.c:2073 #, c-format msgid "included from '%s'.\n" msgstr "" -#: src/LYReadCFG.c:2487 src/LYReadCFG.c:2500 src/LYReadCFG.c:2558 +#: src/LYReadCFG.c:2476 src/LYReadCFG.c:2489 src/LYReadCFG.c:2547 msgid "The following is read from your lynx.cfg file." msgstr "" -#: src/LYReadCFG.c:2488 src/LYReadCFG.c:2501 +#: src/LYReadCFG.c:2477 src/LYReadCFG.c:2490 msgid "Please read the distribution" msgstr "" -#: src/LYReadCFG.c:2494 src/LYReadCFG.c:2504 +#: src/LYReadCFG.c:2483 src/LYReadCFG.c:2493 msgid "for more comments." msgstr "" -#: src/LYReadCFG.c:2540 +#: src/LYReadCFG.c:2529 msgid "RELOAD THE CHANGES" msgstr "" -#: src/LYReadCFG.c:2548 +#: src/LYReadCFG.c:2537 msgid "Your primary configuration" msgstr "" @@ -5580,33 +5599,33 @@ msgstr "" msgid "Upload options:" msgstr "" -#: src/LYUtils.c:1919 +#: src/LYUtils.c:1917 msgid "Download document URL put to clipboard." msgstr "" -#: src/LYUtils.c:2666 +#: src/LYUtils.c:2664 msgid "Unexpected access protocol for this URL scheme." msgstr "" -#: src/LYUtils.c:3571 +#: src/LYUtils.c:3569 msgid "Too many tempfiles" msgstr "" -#: src/LYUtils.c:3871 +#: src/LYUtils.c:3869 msgid "unknown restriction" msgstr "" -#: src/LYUtils.c:3902 +#: src/LYUtils.c:3900 #, c-format msgid "No restrictions set.\n" msgstr "" -#: src/LYUtils.c:3905 +#: src/LYUtils.c:3903 #, c-format msgid "Restrictions set:\n" msgstr "" -#: src/LYUtils.c:5279 +#: src/LYUtils.c:5278 msgid "Cannot find HOME directory" msgstr "" @@ -5653,7 +5672,7 @@ msgid "" "Current valid characters sets are:\n" msgstr "" -#: src/LYrcFile.c:383 +#: src/LYrcFile.c:384 msgid "" "cookie_accept_domains and cookie_reject_domains are comma-delimited\n" "lists of domains from which Lynx should automatically accept or reject\n" @@ -5662,13 +5681,13 @@ msgid "" "settings made here.\n" msgstr "" -#: src/LYrcFile.c:391 +#: src/LYrcFile.c:392 msgid "" "cookie_file specifies the file from which to read persistent cookies.\n" "The default is ~/" msgstr "" -#: src/LYrcFile.c:396 +#: src/LYrcFile.c:397 msgid "" "cookie_loose_invalid_domains, cookie_strict_invalid_domains, and\n" "cookie_query_invalid_domains are comma-delimited lists of which domains\n" @@ -5679,13 +5698,13 @@ msgid "" "querying the user for an invalid path or domain.\n" msgstr "" -#: src/LYrcFile.c:410 +#: src/LYrcFile.c:411 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:415 +#: src/LYrcFile.c:416 msgid "" "dir_list_styles specifies the directory list style under DIRED_SUPPORT\n" "(if implemented). The default is \"MIXED_STYLE\", which sorts both\n" @@ -5693,7 +5712,7 @@ msgid "" "\"DIRECTORIES_FIRST\" lists directories first.\n" msgstr "" -#: src/LYrcFile.c:423 +#: src/LYrcFile.c:424 msgid "" "If emacs_keys is to \"on\" then the normal EMACS movement keys:\n" " ^N = down ^P = up\n" @@ -5701,7 +5720,7 @@ msgid "" "will be enabled.\n" msgstr "" -#: src/LYrcFile.c:429 +#: src/LYrcFile.c:430 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" @@ -5709,7 +5728,7 @@ msgid "" "will be used for sending mail.\n" msgstr "" -#: src/LYrcFile.c:436 +#: src/LYrcFile.c:437 msgid "" "The file_sorting_method specifies which value to sort on when viewing\n" "file lists such as FTP directories. The options are:\n" @@ -5719,7 +5738,7 @@ msgid "" " BY_DATE -- sorts on the date of the file\n" msgstr "" -#: src/LYrcFile.c:461 +#: src/LYrcFile.c:462 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" @@ -5734,7 +5753,7 @@ msgid "" "Current lineedit modes are:\n" msgstr "" -#: src/LYrcFile.c:479 +#: src/LYrcFile.c:480 msgid "" "The following allow you to define sub-bookmark files and descriptions.\n" "The format is multi_bookmark<capital_letter>=<filename>,<description>\n" @@ -5742,7 +5761,7 @@ msgid "" "We start with \"multi_bookmarkB\" since 'A' is the default (see above).\n" msgstr "" -#: src/LYrcFile.c:485 +#: src/LYrcFile.c:486 msgid "" "personal_mail_address specifies your personal mail address. The\n" "address will be sent during HTTP file transfers for authorization and\n" @@ -5753,7 +5772,7 @@ msgid "" "your mailed comments.\n" msgstr "" -#: src/LYrcFile.c:494 +#: src/LYrcFile.c:495 msgid "" "personal_mail_name specifies your personal name, for mail. The\n" "name is sent for mailed comments. Lynx will prompt for this,\n" @@ -5765,7 +5784,7 @@ msgid "" "menu, or modify this file directly.\n" msgstr "" -#: src/LYrcFile.c:504 +#: src/LYrcFile.c:505 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" @@ -5781,7 +5800,7 @@ msgid "" "is also allowed.\n" msgstr "" -#: src/LYrcFile.c:520 +#: src/LYrcFile.c:521 msgid "" "preferred_language specifies the language in MIME notation (e.g., en,\n" "fr, may be a comma-separated list in decreasing preference)\n" @@ -5790,7 +5809,7 @@ msgid "" "Otherwise, the server will send the file in its default language.\n" msgstr "" -#: src/LYrcFile.c:531 +#: src/LYrcFile.c:532 msgid "" "If run_all_execution_links is set \"on\" then all local execution links\n" "will be executed when they are selected.\n" @@ -5803,7 +5822,7 @@ msgid "" " you are viewing trusted source information.\n" msgstr "" -#: src/LYrcFile.c:542 +#: src/LYrcFile.c:543 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" @@ -5819,7 +5838,7 @@ msgid "" " you are viewing trusted source information.\n" msgstr "" -#: src/LYrcFile.c:560 +#: src/LYrcFile.c:561 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" @@ -5830,7 +5849,7 @@ msgid "" "The default can be overridden via the -popup command line toggle.\n" msgstr "" -#: src/LYrcFile.c:571 +#: src/LYrcFile.c:572 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" @@ -5849,7 +5868,7 @@ msgid "" "\"off\" \"show color\" settings will be treated as \"default\".\n" msgstr "" -#: src/LYrcFile.c:588 +#: src/LYrcFile.c:589 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" @@ -5862,7 +5881,7 @@ msgid "" "The default can be overridden via the -show_cursor command line toggle.\n" msgstr "" -#: src/LYrcFile.c:599 +#: src/LYrcFile.c:600 msgid "" "show_dotfiles specifies that the directory listing should include\n" "\"hidden\" (dot) files/directories. If set \"on\", this will be\n" @@ -5871,7 +5890,7 @@ msgid "" "is disabled, creation of such files via Lynx also is disabled.\n" msgstr "" -#: src/LYrcFile.c:610 +#: src/LYrcFile.c:611 msgid "" "If sub_bookmarks is not turned \"off\", and multiple bookmarks have\n" "been defined (see below), then all bookmark operations will first\n" @@ -5884,7 +5903,7 @@ msgid "" "presented regardless of user mode.\n" msgstr "" -#: src/LYrcFile.c:624 +#: src/LYrcFile.c:626 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" @@ -5894,14 +5913,14 @@ msgid "" "bottom of the screen.\n" msgstr "" -#: src/LYrcFile.c:633 +#: src/LYrcFile.c:635 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:638 +#: src/LYrcFile.c:640 msgid "" "If vi_keys is set to \"on\", then the normal VI movement keys:\n" " j = down k = up\n" @@ -5911,13 +5930,13 @@ msgid "" "and the keymap display, respectively.\n" msgstr "" -#: src/LYrcFile.c:646 +#: src/LYrcFile.c:648 msgid "" "The visited_links setting controls how Lynx organizes the information\n" "in the Visited Links Page.\n" msgstr "" -#: src/LYrcFile.c:887 +#: src/LYrcFile.c:890 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" @@ -5928,13 +5947,13 @@ msgid "" "regardless of whether numlock is on.\n" msgstr "" -#: src/LYrcFile.c:896 +#: src/LYrcFile.c:899 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:900 +#: src/LYrcFile.c:903 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" @@ -5945,33 +5964,33 @@ msgid "" "lists and output from the list command also enumerate form inputs.\n" msgstr "" -#: src/LYrcFile.c:909 +#: src/LYrcFile.c:912 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:941 +#: src/LYrcFile.c:944 msgid "" "Lynx User Defaults File\n" "\n" msgstr "" -#: src/LYrcFile.c:950 +#: src/LYrcFile.c:953 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:957 +#: src/LYrcFile.c:960 msgid "" "You must then save the settings using the link on the line above the\n" "checkbox:\n" msgstr "" -#: src/LYrcFile.c:964 +#: src/LYrcFile.c:967 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 '>' " @@ -5979,14 +5998,14 @@ msgid "" "\n" msgstr "" -#: src/LYrcFile.c:971 +#: src/LYrcFile.c:974 msgid "" "This file contains options saved from the Lynx Options Screen (normally\n" "with the '>' key).\n" "\n" msgstr "" -#: src/LYrcFile.c:978 +#: src/LYrcFile.c:981 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" diff --git a/scripts/collapse-br b/scripts/collapse-br new file mode 100755 index 00000000..a3378b5e --- /dev/null +++ b/scripts/collapse-br @@ -0,0 +1,162 @@ +#!/usr/bin/env perl +# $LynxId: collapse-br,v 1.8 2017/07/04 19:35:45 tom Exp $ +# Generate a series of HTML files containing a mixture of text and <br> tags, +# comparing dumps of those to w3m and elinks. + +use warnings; +use strict; +use diagnostics; + +$| = 1; + +use Getopt::Std; +use File::Temp qw/ tempdir /; + +our ( $opt_C, $opt_T, $opt_e, $opt_l, $opt_p, $opt_t, $opt_w ); +our $tempdir = tempdir( CLEANUP => 1 ); + +sub dumpit($$) { + my $prog = shift; + my $html = shift; + my $opts = "-dump"; + $html = + "<html>" + . "<head><title>T</title></head>" + . "<body>$html</body>" + . "</html>" + if ($opt_t); + my @result; + if ( $prog =~ /lynx$/ ) { + my $name = "$tempdir/lynx.cfg"; + $opts .= " -cfg=$name"; + open my $fh, ">$name"; + printf $fh "collapse_br_tags:%s\n", $opt_C ? "false" : "true"; + printf $fh "trim_blank_lines:%s\n", $opt_T ? "false" : "true"; + close $fh; + } + if ($opt_p) { + $opts .= " -stdin" if ( $prog =~ /lynx$/ ); + $opts .= " -force-html" if ( $prog =~ /elinks$/ ); + $opts .= " -T text/html" if ( $prog =~ /w3m$/ ); + if ( open my $fh, "echo '$html' | $prog $opts |" ) { + @result = <$fh>; + close $fh; + } + } + else { + my $name = "$tempdir/foobar.html"; + open my $fh, ">$name"; + printf $fh "%s", $html; + close $fh; + + $opts .= " $name"; + if ( open my $fh, "$prog $opts |" ) { + @result = <$fh>; + close $fh; + } + } + for my $n ( 0 .. $#result ) { + chomp $result[$n]; + } + + if ( open my $fh, "echo '$html' | $prog $opts |" ) { + @result = <$fh>; + close $fh; + for my $n ( 0 .. $#result ) { + chomp $result[$n]; + } + } + $result[0] = "OOPS" unless ( $#result >= 0 ); + return @result; +} + +sub header($) { + my @cols = @{ $_[0] }; + my $text = ""; + for my $c ( 0 .. $#cols ) { + $text .= sprintf "%-8s", $cols[$c]; + } + printf "\t %s\n", $text; +} + +sub doit() { + my $length = 1; + my $state = -1; + + my @tokens; + $tokens[0] = " "; + $tokens[1] = "X"; + $tokens[2] = "<br>"; + my $tokens = $#tokens + 1; + + my @progs; + $progs[ $#progs + 1 ] = "lynx"; + + $progs[ $#progs + 1 ] = "w3m" if ($opt_w); + $progs[ $#progs + 1 ] = "elinks" if ($opt_e); + $progs[ $#progs + 1 ] = "./lynx" if ( -f "./lynx" ); + + while ( $length <= $opt_l ) { + my $bits = ""; + my $html = ""; + my $value = ++$state; + $length = 0; + while ( $value >= 0 ) { + my $digit = $value % $tokens; + my $update = ( $value - $digit ) / $tokens; + last if ( ( $update <= 0 ) and ( $value <= 0 ) and $length > 0 ); + $bits .= sprintf "%d", $digit; + $length++; + $html .= $tokens[$digit]; + $value = $update; + } + + # skip the non-interesting cases + next if ( $bits =~ /00/ ); + next if ( $bits =~ /11/ ); + next unless ( $bits =~ /2/ ); + printf "%-*s '%s'\n", $opt_l, $bits, $html; + my @listing; + for my $p ( 0 .. $#progs ) { + my @q = &dumpit( $progs[$p], $html ); + my $l = $p * 8; + for my $r ( 0 .. $#q ) { + + $listing[$r] = "" unless ( $listing[$r] ); + $listing[$r] = sprintf "%-*s", $l, $listing[$r] if ( $l > 0 ); + $listing[$r] .= sprintf "|%s", + substr( $q[$r] . "........", 0, 7 ); + } + } + &header( \@progs ); + for my $r ( 0 .. $#listing ) { + printf "\t%2d %s|\n", $r, $listing[$r]; + } + } +} + +sub main::HELP_MESSAGE() { + printf STDERR <<EOF +Usage: $0 [options] + +Options: + -C do not collapse BR-tags (lynx only) + -T do not trim blank lines (lynx only) + -e compare with elinks + -l NUM generate test-cases up to this length (default: 3) + -p pipe HTML to the program rather than reading a file + -t add dummy title + -w compare with w3m + +EOF + ; + exit; +} + +&getopts('CTel:ptw') || main::HELP_MESSAGE; + +$opt_l = 3 unless ($opt_l); + +&doit; + +1; diff --git a/src/GridText.c b/src/GridText.c index 2738a26b..885141ce 100644 --- a/src/GridText.c +++ b/src/GridText.c @@ -1,5 +1,5 @@ /* - * $LynxId: GridText.c,v 1.295 2017/07/02 20:01:22 tom Exp $ + * $LynxId: GridText.c,v 1.302 2017/07/04 17:27:07 tom Exp $ * * Character grid hypertext object * =============================== @@ -5760,11 +5760,11 @@ void HText_endAppend(HText *text) /* * Get the first line. */ - if ((line_ptr = FirstHTLine(text)) != 0) { + if (LYtrimBlankLines && (line_ptr = FirstHTLine(text)) != 0) { /* - * Remove the blank lines at the end of document. + * Remove blank lines at the end of the document. */ - while (text->last_line->data[0] == '\0' && text->Lines > 2) { + while (text->last_line->data[0] == '\0' && text->Lines > 0) { HTLine *next_to_the_last_line = text->last_line->prev; CTRACE((tfp, "GridText: Removing bottom blank line: `%s'\n", diff --git a/src/HTML.c b/src/HTML.c index 96fb80b8..c9ab9395 100644 --- a/src/HTML.c +++ b/src/HTML.c @@ -1,5 +1,5 @@ /* - * $LynxId: HTML.c,v 1.171 2017/07/02 19:57:04 tom Exp $ + * $LynxId: HTML.c,v 1.173 2017/07/04 20:05:01 tom Exp $ * * Structured stream to Rich hypertext converter * ============================================ @@ -1984,14 +1984,15 @@ static int HTML_start_element(HTStructured * me, int element_number, case HTML_BR: UPDATE_STYLE; CHECK_ID(HTML_GEN_ID); - /* Add a \r (new line) if these three conditions are true: - * 1. We are not collapsing BR's, and - * 2. The previous line has text on it, or - * 3. This line has text on it. - * Otherwise, don't do anything. -DH 980814, TD 980827 + /* Add a \r (new line) if these conditions are true: + * * We are not collapsing BR's (and either we are not trimming + * blank lines, or the preceding line is non-empty), or + * * The current line has text on it. + * Otherwise, don't do anything. -DH 19980814, TD 19980827/20170704 */ if ((LYCollapseBRs == FALSE && - !HText_PreviousLineEmpty(me->text, FALSE)) || + (!LYtrimBlankLines || + !HText_PreviousLineEmpty(me->text, FALSE))) || !HText_LastLineEmpty(me->text, FALSE)) { HText_setLastChar(me->text, ' '); /* absorb white space */ HText_appendCharacter(me->text, '\r'); diff --git a/src/LYGlobalDefs.h b/src/LYGlobalDefs.h index 0e27a767..6ee3f81c 100644 --- a/src/LYGlobalDefs.h +++ b/src/LYGlobalDefs.h @@ -1,5 +1,5 @@ /* - * $LynxId: LYGlobalDefs.h,v 1.141 2015/12/18 00:35:49 tom Exp $ + * $LynxId: LYGlobalDefs.h,v 1.142 2017/07/03 23:10:31 tom Exp $ * * global variable definitions */ @@ -225,6 +225,7 @@ extern "C" { extern BOOLEAN LYinternal_flag; /* don't need fresh copy, was internal link */ extern BOOLEAN LYoverride_no_cache; /* don't need fresh copy, from history */ extern BOOLEAN LYresubmit_posts; + extern BOOLEAN LYtrimBlankLines; extern BOOLEAN LYtrimInputFields; extern BOOLEAN LYxhtml_parsing; extern BOOLEAN bold_H1; diff --git a/src/LYMain.c b/src/LYMain.c index fcb87baf..e38ba5bb 100644 --- a/src/LYMain.c +++ b/src/LYMain.c @@ -1,5 +1,5 @@ /* - * $LynxId: LYMain.c,v 1.261 2017/04/27 22:34:12 tom Exp $ + * $LynxId: LYMain.c,v 1.265 2017/07/03 23:31:21 tom Exp $ */ #include <HTUtils.h> #include <HTTP.h> @@ -204,6 +204,7 @@ BOOLEAN LYforce_no_cache = FALSE; BOOLEAN LYinternal_flag = FALSE; /* override no-cache b/c internal link */ BOOLEAN LYoverride_no_cache = FALSE; /*override no-cache b/c history etc */ BOOLEAN LYresubmit_posts = ALWAYS_RESUBMIT_POSTS; +BOOLEAN LYtrimBlankLines = TRUE; BOOLEAN LYtrimInputFields = FALSE; BOOLEAN LYxhtml_parsing = FALSE; BOOLEAN bold_H1 = FALSE; @@ -3412,6 +3413,10 @@ outputs for -source dumps" "=FILENAME\nread keystroke commands from the given file\n(see -cmd_log)" ), #endif + PARSE_SET( + "collapse_br_tags", 4|TOGGLE_ARG, LYCollapseBRs, + "toggles collapsing of BR tags" + ), #ifdef USE_SLANG PARSE_FUN( "color", 4|FUNCTION_ARG, color_fun, @@ -3978,6 +3983,10 @@ bug which treated '>' as a co-terminator for\ndouble-quotes and tags" "traverse all http links derived from startfile" ), PARSE_SET( + "trim_blank_lines", 2|TOGGLE_ARG, LYtrimBlankLines, + "\ntoggle trimming of leading/trailing/collapsed-br blank lines" + ), + PARSE_SET( "trim_input_fields", 2|SET_ARG, LYtrimInputFields, "\ntrim input text/textarea fields in forms" ), diff --git a/src/LYOptions.c b/src/LYOptions.c index 5100d940..eaee6be9 100644 --- a/src/LYOptions.c +++ b/src/LYOptions.c @@ -1,4 +1,4 @@ -/* $LynxId: LYOptions.c,v 1.172 2017/07/02 20:07:12 tom Exp $ */ +/* $LynxId: LYOptions.c,v 1.174 2017/07/04 20:28:05 tom Exp $ */ #include <HTUtils.h> #include <HTFTP.h> #include <HTTP.h> /* 'reloading' flag */ @@ -2308,6 +2308,24 @@ static OptValues verbose_images_type_values[] = {0, 0, 0} }; +static const char *collapse_br_tags_string = RC_COLLAPSE_BR_TAGS; +static OptValues collapse_br_tags_values[] = +{ + /* LYCollapseBRs variable */ + {FALSE, N_("OFF"), "OFF"}, + {TRUE, N_("collapse"), "ON"}, + {0, 0, 0} +}; + +static const char *trim_blank_lines_string = RC_TRIM_BLANK_LINES; +static OptValues trim_blank_lines_values[] = +{ + /* LYtrimBlankLines variable */ + {FALSE, N_("OFF"), "OFF"}, + {TRUE, N_("trim-lines"), "ON"}, + {0, 0, 0} +}; + /* * Bookmark Options */ @@ -3105,6 +3123,24 @@ int postoptions(DocInfo *newdoc) } } + /* Collapse BR Tags: ON/OFF */ + if (!strcmp(data[i].tag, collapse_br_tags_string) + && GetOptValues(collapse_br_tags_values, data[i].value, &code)) { + if (LYCollapseBRs != code) { + LYCollapseBRs = (BOOLEAN) code; + need_reload = TRUE; + } + } + + /* Trim Blank Lines: ON/OFF */ + if (!strcmp(data[i].tag, trim_blank_lines_string) + && GetOptValues(trim_blank_lines_values, data[i].value, &code)) { + if (LYtrimBlankLines != code) { + LYtrimBlankLines = (BOOLEAN) code; + need_reload = TRUE; + } + } + /* VI Keys: ON/OFF */ if (!strcmp(data[i].tag, vi_keys_string) && GetOptValues(bool_values, data[i].value, &code)) { @@ -4007,6 +4043,18 @@ static int gen_options(char **newfile) PutOptValues(fp0, verbose_img, verbose_images_type_values); EndSelect(fp0); + /* Collapse BR Tags: ON/OFF */ + PutLabel(fp0, gettext("Collapse BR tags"), collapse_br_tags_string); + BeginSelect(fp0, collapse_br_tags_string); + PutOptValues(fp0, LYCollapseBRs, collapse_br_tags_values); + EndSelect(fp0); + + /* Trim blank lines: ON/OFF */ + PutLabel(fp0, gettext("Trim blank lines"), trim_blank_lines_string); + BeginSelect(fp0, trim_blank_lines_string); + PutOptValues(fp0, LYtrimBlankLines, trim_blank_lines_values); + EndSelect(fp0); + /* * Headers Transferred to Remote Servers */ diff --git a/src/LYReadCFG.c b/src/LYReadCFG.c index 7524c0a5..6552ae57 100644 --- a/src/LYReadCFG.c +++ b/src/LYReadCFG.c @@ -1,5 +1,5 @@ /* - * $LynxId: LYReadCFG.c,v 1.189 2016/11/24 15:35:29 tom Exp $ + * $LynxId: LYReadCFG.c,v 1.190 2017/07/03 23:21:43 tom Exp $ */ #ifndef NO_RULES #include <HTRules.h> @@ -1740,6 +1740,7 @@ static Config_Type Config_Table [] = #endif PARSE_PRG(RC_TOUCH_PATH, ppTOUCH), PARSE_SET(RC_TRACK_INTERNAL_LINKS, track_internal_links), + PARSE_SET(RC_TRIM_BLANK_LINES, LYtrimBlankLines), PARSE_SET(RC_TRIM_INPUT_FIELDS, LYtrimInputFields), #ifdef EXEC_LINKS PARSE_DEF(RC_TRUSTED_EXEC, EXEC_PATH), diff --git a/src/LYrcFile.c b/src/LYrcFile.c index 2c39c119..e42d3f65 100644 --- a/src/LYrcFile.c +++ b/src/LYrcFile.c @@ -1,4 +1,4 @@ -/* $LynxId: LYrcFile.c,v 1.96 2016/11/24 16:42:46 tom Exp $ */ +/* $LynxId: LYrcFile.c,v 1.99 2017/07/04 20:30:03 tom Exp $ */ #include <HTUtils.h> #include <HTFTP.h> #include <LYUtils.h> @@ -380,6 +380,7 @@ 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\ ")), + MAYBE_SET(RC_COLLAPSE_BR_TAGS, LYCollapseBRs, MSG_ENABLE_LYNXRC), PARSE_LIS(RC_COOKIE_ACCEPT_DOMAINS, LYCookieAcceptDomains, N_("\ cookie_accept_domains and cookie_reject_domains are comma-delimited\n\ lists of domains from which Lynx should automatically accept or reject\n\ @@ -620,6 +621,7 @@ presented regardless of user mode.\n\ ")), MAYBE_FUN(RC_TAGSOUP, get_tagsoup, put_tagsoup, MSG_ENABLE_LYNXRC), + MAYBE_SET(RC_TRIM_BLANK_LINES, LYtrimBlankLines, MSG_ENABLE_LYNXRC), MAYBE_SET(RC_UNDERLINE_LINKS, LYUnderlineLinks, MSG_ENABLE_LYNXRC), PARSE_ENU(RC_USER_MODE, user_mode, tbl_user_mode, N_("\ user_mode specifies the users level of knowledge with Lynx. The\n\ diff --git a/src/LYrcFile.h b/src/LYrcFile.h index 32003b66..dd2f99d2 100644 --- a/src/LYrcFile.h +++ b/src/LYrcFile.h @@ -1,5 +1,5 @@ /* - * $LynxId: LYrcFile.h,v 1.48 2015/12/18 01:58:05 tom Exp $ + * $LynxId: LYrcFile.h,v 1.49 2017/07/03 23:20:33 tom Exp $ */ #ifndef LYRCFILE_H #define LYRCFILE_H @@ -257,6 +257,7 @@ #define RC_TN3270_PATH "tn3270_path" #define RC_TOUCH_PATH "touch_path" #define RC_TRACK_INTERNAL_LINKS "track_internal_links" +#define RC_TRIM_BLANK_LINES "trim_blank_lines" #define RC_TRIM_INPUT_FIELDS "trim_input_fields" #define RC_TRUSTED_EXEC "trusted_exec" #define RC_TRUSTED_LYNXCGI "trusted_lynxcgi" |