From d93bceb9bd6ab32c614ac20dc5c87e3af2a7f85f Mon Sep 17 00:00:00 2001 From: Kalle Olavi Niemitalo Date: Sun, 7 Sep 2008 06:10:52 +0300 Subject: [PATCH 01/15] Fix blacklist crash in BitTorrent make_bittorrent_peer_connection() used to construct a struct uri on the stack. This was hacky but worked nicely because the struct uri was not really accessed after make_connection() returned. However, since commit a83ff1f565a4a7bc25a4b8353ee26bc1b97410e3, the struct uri is also needed when the connection is being closed. Valgrind shows: Invalid read of size 2 at 0x8100764: get_blacklist_entry (blacklist.c:33) by 0x8100985: del_blacklist_entry (blacklist.c:64) by 0x80DA579: complete_connect_socket (socket.c:448) by 0x80DA84A: connected (socket.c:513) by 0x80D0DDF: select_loop (select.c:297) by 0x80D00C6: main (main.c:353) Address 0xBEC3BFAE is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes To fix this, allocate the struct uri on the heap instead, by constructing a string and giving that to get_uri(). This string cannot use the "bittorrent" URI scheme because parse_uri() does not recognize the host and port fields in that. (The "bittorrent" scheme has protocol_backend.free_syntax = 1 in order to support strings like "bittorrent:http://beta.legaltorrents.com/get/159-noisome-beasts".) Instead, define a new "bittorrent-peer" URI scheme for this purpose. If the user attempts to use this URI scheme, its handler aborts the connection with an error; but when make_bittorrent_peer_connection() uses a bittorrent-peer URI, the handler is not called. This change also lets get_uri() set the ipv6 flag if peer_info->ip is an IPv6 address literal. Reported by Witold Filipczyk. --- src/network/state.c | 1 + src/network/state.h | 1 + src/protocol/bittorrent/connection.c | 6 ++++ src/protocol/bittorrent/connection.h | 2 ++ src/protocol/bittorrent/peerconnect.c | 41 ++++++++++++++++----------- src/protocol/protocol.c | 1 + src/protocol/protocol.h | 1 + 7 files changed, 37 insertions(+), 16 deletions(-) diff --git a/src/network/state.c b/src/network/state.c index 3a949829..9ecd6f31 100644 --- a/src/network/state.c +++ b/src/network/state.c @@ -124,6 +124,7 @@ static const struct s_msg_dsc msg_dsc[] = { {S_BITTORRENT_METAINFO, N_("The BitTorrent metainfo file contained errors")}, {S_BITTORRENT_TRACKER, N_("The tracker requesting failed")}, {S_BITTORRENT_BAD_URL, N_("The BitTorrent URL does not point to a valid URL")}, + {S_BITTORRENT_PEER_URL, N_("The bittorrent-peer URL scheme is for internal use only")}, #endif /* fsp_open_session() failed but did not set errno. diff --git a/src/network/state.h b/src/network/state.h index 16faf418..f8358b25 100644 --- a/src/network/state.h +++ b/src/network/state.h @@ -103,6 +103,7 @@ enum connection_basic_state { S_BITTORRENT_METAINFO = -100801, S_BITTORRENT_TRACKER = -100802, S_BITTORRENT_BAD_URL = -100803, + S_BITTORRENT_PEER_URL = -100804, S_FSP_OPEN_SESSION_UNKN = -100900, }; diff --git a/src/protocol/bittorrent/connection.c b/src/protocol/bittorrent/connection.c index f15bfe84..132283bd 100644 --- a/src/protocol/bittorrent/connection.c +++ b/src/protocol/bittorrent/connection.c @@ -414,3 +414,9 @@ bittorrent_protocol_handler(struct connection *conn) bittorrent_metainfo_callback, conn, 0); done_uri(uri); } + +void +bittorrent_peer_protocol_handler(struct connection *conn) +{ + abort_connection(conn, connection_state(S_BITTORRENT_PEER_URL)); +} diff --git a/src/protocol/bittorrent/connection.h b/src/protocol/bittorrent/connection.h index af6c89d0..13aeca03 100644 --- a/src/protocol/bittorrent/connection.h +++ b/src/protocol/bittorrent/connection.h @@ -9,8 +9,10 @@ struct connection; #ifdef CONFIG_BITTORRENT extern protocol_handler_T bittorrent_protocol_handler; +extern protocol_handler_T bittorrent_peer_protocol_handler; #else #define bittorrent_protocol_handler NULL +#define bittorrent_peer_protocol_handler NULL #endif void update_bittorrent_connection_state(struct connection *conn); diff --git a/src/protocol/bittorrent/peerconnect.c b/src/protocol/bittorrent/peerconnect.c index 8db72111..7f4158c1 100644 --- a/src/protocol/bittorrent/peerconnect.c +++ b/src/protocol/bittorrent/peerconnect.c @@ -271,12 +271,13 @@ enum bittorrent_state make_bittorrent_peer_connection(struct bittorrent_connection *bittorrent, struct bittorrent_peer *peer_info) { - struct uri uri; + enum bittorrent_state result = BITTORRENT_STATE_OUT_OF_MEM; + struct uri *uri = NULL; + struct string uri_string = NULL_STRING; struct bittorrent_peer_connection *peer; - unsigned char port[5]; peer = init_bittorrent_peer_connection(-1); - if (!peer) return BITTORRENT_STATE_OUT_OF_MEM; + if (!peer) goto out; peer->local.initiater = 1; @@ -284,10 +285,7 @@ make_bittorrent_peer_connection(struct bittorrent_connection *bittorrent, peer->bittorrent = bittorrent; peer->bitfield = init_bitfield(bittorrent->meta.pieces); - if (!peer->bitfield) { - done_bittorrent_peer_connection(peer); - return BITTORRENT_STATE_OUT_OF_MEM; - } + if (!peer->bitfield) goto out; memcpy(peer->id, peer_info->id, sizeof(peer->id)); @@ -295,17 +293,28 @@ make_bittorrent_peer_connection(struct bittorrent_connection *bittorrent, * can extract the IP address and port number. */ /* FIXME: Rather change the make_connection() interface. This is an ugly * hack. */ - /* FIXME: Set the ipv6 flag iff ... */ - memset(&uri, 0, sizeof(uri)); - uri.protocol = PROTOCOL_BITTORRENT; - uri.host = peer_info->ip; - uri.hostlen = strlen(peer_info->ip); - uri.port = port; - uri.portlen = snprintf(port, sizeof(port), "%u", peer_info->port); + if (!init_string(&uri_string)) goto out; + if (!add_format_to_string(&uri_string, +#ifdef CONFIG_IPV6 + strchr(peer_info->ip, ':') ? + "bittorrent-peer://[%s]:%u/" : +#endif + "bittorrent-peer://%s:%u/", + peer_info->ip, (unsigned) peer_info->port)) + goto out; + uri = get_uri(uri_string.source, 0); + if (!uri) goto out; - make_connection(peer->socket, &uri, send_bittorrent_peer_handshake, 1); + make_connection(peer->socket, uri, send_bittorrent_peer_handshake, 1); + result = BITTORRENT_STATE_OK; - return BITTORRENT_STATE_OK; +out: + if (uri) + done_uri(uri); + done_string(&uri_string); + if (peer && result != BITTORRENT_STATE_OK) + done_bittorrent_peer_connection(peer); + return result; } diff --git a/src/protocol/protocol.c b/src/protocol/protocol.c index 33303656..e43adc2e 100644 --- a/src/protocol/protocol.c +++ b/src/protocol/protocol.c @@ -58,6 +58,7 @@ struct protocol_backend { static const struct protocol_backend protocol_backends[] = { { "about", 0, about_protocol_handler, 0, 0, 1, 0, 1 }, { "bittorrent", 0, bittorrent_protocol_handler, 0, 0, 1, 0, 1 }, + { "bittorrent-peer",0,bittorrent_peer_protocol_handler, 1, 1, 0, 0, 1 }, { "data", 0, data_protocol_handler, 0, 0, 1, 0, 1 }, { "file", 0, file_protocol_handler, 1, 0, 0, 0, 0 }, { "finger", 79, finger_protocol_handler, 1, 1, 0, 0, 1 }, diff --git a/src/protocol/protocol.h b/src/protocol/protocol.h index c02e6716..d009bc0c 100644 --- a/src/protocol/protocol.h +++ b/src/protocol/protocol.h @@ -11,6 +11,7 @@ struct uri; enum protocol { PROTOCOL_ABOUT, PROTOCOL_BITTORRENT, + PROTOCOL_BITTORRENT_PEER, PROTOCOL_DATA, PROTOCOL_FILE, PROTOCOL_FINGER, From 0ee1d05d8147072ce87893c8876745d481183627 Mon Sep 17 00:00:00 2001 From: Kalle Olavi Niemitalo Date: Sun, 7 Sep 2008 18:04:18 +0300 Subject: [PATCH 02/15] 1031: Return 0 from spidermonkey_runtime_addref if JS_NewContext fails. Previously, this would have caused an assertion failure. --- src/ecmascript/spidermonkey-shared.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ecmascript/spidermonkey-shared.c b/src/ecmascript/spidermonkey-shared.c index c4cc60c2..bb7f3cae 100644 --- a/src/ecmascript/spidermonkey-shared.c +++ b/src/ecmascript/spidermonkey-shared.c @@ -56,6 +56,7 @@ spidermonkey_runtime_addref(void) JS_DestroyRuntime(spidermonkey_runtime); spidermonkey_runtime = NULL; JS_ShutDown(); + return 0; } } From b94657869bc90b5c42693c28c472f041a80fced1 Mon Sep 17 00:00:00 2001 From: Kalle Olavi Niemitalo Date: Sun, 7 Sep 2008 19:39:26 +0300 Subject: [PATCH 03/15] 1031: JS_SetErrorReporter only once per JSRuntime. Previously, spidermonkey_get_interpreter() and init_smjs() each called JS_SetErrorReporter on the JSContexts they created. However, JS_SetErrorReporter actually sets the error reporter of the JSRuntime associated with the JSContext, and all of our JSContexts use the same JSRuntime nowadays, so only the error_reporter() of src/ecmascript/spidermonkey.c was left installed. Because this error_reporter() asserts that JS_GetContextPrivate(ctx) returns a non-NULL pointer, and init_smjs() does not set a private pointer for smjs_ctx, any error in smjs_ctx could cause an assertion failure, at least in principle. Fix this by making spidermonkey_runtime_addref() install a shared error_reporter() when it creates the JSRuntime and the first JSContext. The shared error_reporter() then checks the JSContext and calls the appropriate function. The two error reporters are quite similar with each other. In the future, we could move the common code into shared functions. I'm not doing that yet though, because fixing the bug doesn't require it. --- src/ecmascript/spidermonkey-shared.c | 39 ++++++++++++++++++++++++++++ src/ecmascript/spidermonkey.c | 5 ++-- src/ecmascript/spidermonkey.h | 6 +++++ src/scripting/smjs/core.c | 9 ++++--- src/scripting/smjs/core.h | 1 + 5 files changed, 53 insertions(+), 7 deletions(-) diff --git a/src/ecmascript/spidermonkey-shared.c b/src/ecmascript/spidermonkey-shared.c index bb7f3cae..ab1d5829 100644 --- a/src/ecmascript/spidermonkey-shared.c +++ b/src/ecmascript/spidermonkey-shared.c @@ -8,6 +8,8 @@ #include "elinks.h" #include "ecmascript/spidermonkey-shared.h" +#include "ecmascript/spidermonkey.h" +#include "scripting/smjs/core.h" /** A shared runtime used for both user scripts (scripting/smjs/) and * scripts on web pages (ecmascript/spidermonkey/). @@ -31,6 +33,38 @@ JSContext *spidermonkey_empty_context; * it can be initialized and shut down in arbitrary order. */ static int spidermonkey_runtime_refcount; +static void +error_reporter(JSContext *ctx, const char *message, JSErrorReport *report) +{ + /* We have three types of JSContexts. + * - spidermonkey_empty_context never has anything defined or + * evaluated in it, so this error_reporter() should not be + * called for it. + * - smjs_ctx for user scripts. + * - many JSContexts for web scripts. + * Check which one ctx is and call the appropriate function. + * + * Instead of the scheme used here, we could: + * (a) make the private pointer of every context point to a + * structure of known type and put a function pointer or + * enum in that structure, or + * (b) assume that JS_GetContextPrivate(smjs_ctx) == NULL. */ + + assert(ctx != spidermonkey_empty_context); + if_assert_failed return; + +#ifdef CONFIG_SCRIPTING_SPIDERMONKEY + if (ctx == smjs_ctx) { + smjs_error_reporter(ctx, message, report); + return; + } +#endif + +#ifdef CONFIG_ECMASCRIPT_SMJS + spidermonkey_error_reporter(ctx, message, report); +#endif +} + /** Initialize ::spidermonkey_runtime and ::spidermonkey_empty_context. * If already initialized, just increment the reference count. * @@ -58,6 +92,11 @@ spidermonkey_runtime_addref(void) JS_ShutDown(); return 0; } + + /* Although JS_SetErrorReporter gets the JSContext as + * a parameter, it affects the whole JSRuntime. */ + JS_SetErrorReporter(spidermonkey_empty_context, + error_reporter); } assert(spidermonkey_runtime); diff --git a/src/ecmascript/spidermonkey.c b/src/ecmascript/spidermonkey.c index 267f81c5..d5d10304 100644 --- a/src/ecmascript/spidermonkey.c +++ b/src/ecmascript/spidermonkey.c @@ -57,8 +57,8 @@ static int js_module_init_ok; -static void -error_reporter(JSContext *ctx, const char *message, JSErrorReport *report) +void +spidermonkey_error_reporter(JSContext *ctx, const char *message, JSErrorReport *report) { struct ecmascript_interpreter *interpreter = JS_GetContextPrivate(ctx); struct terminal *term; @@ -171,7 +171,6 @@ spidermonkey_get_interpreter(struct ecmascript_interpreter *interpreter) /* XXX: JSOPTION_COMPILE_N_GO will go (will it?) when we implement * some kind of bytecode cache. (If we will ever do that.) */ JS_SetOptions(ctx, JSOPTION_VAROBJFIX | JSOPTION_COMPILE_N_GO); - JS_SetErrorReporter(ctx, error_reporter); window_obj = JS_NewObject(ctx, (JSClass *) &window_class, NULL, NULL); if (!window_obj) { diff --git a/src/ecmascript/spidermonkey.h b/src/ecmascript/spidermonkey.h index 119ff802..13d086a1 100644 --- a/src/ecmascript/spidermonkey.h +++ b/src/ecmascript/spidermonkey.h @@ -2,6 +2,10 @@ #define EL__ECMASCRIPT_SPIDERMONKEY_H struct ecmascript_interpreter; +struct form_state; +struct form_view; +struct JSContext; +struct JSErrorReport; struct string; void *spidermonkey_get_interpreter(struct ecmascript_interpreter *interpreter); @@ -15,5 +19,7 @@ void spidermonkey_eval(struct ecmascript_interpreter *interpreter, struct string unsigned char *spidermonkey_eval_stringback(struct ecmascript_interpreter *interpreter, struct string *code); int spidermonkey_eval_boolback(struct ecmascript_interpreter *interpreter, struct string *code); +void spidermonkey_error_reporter(struct JSContext *ctx, const char *message, struct JSErrorReport *report); + extern struct module spidermonkey_module; #endif diff --git a/src/scripting/smjs/core.c b/src/scripting/smjs/core.c index a5235c1b..7fa296a8 100644 --- a/src/scripting/smjs/core.c +++ b/src/scripting/smjs/core.c @@ -33,8 +33,8 @@ alert_smjs_error(unsigned char *msg) smjs_ses, msg); } -static void -error_reporter(JSContext *ctx, const char *message, JSErrorReport *report) +void +smjs_error_reporter(JSContext *ctx, const char *message, JSErrorReport *report) { unsigned char *strict, *exception, *warning, *error; struct string msg; @@ -127,14 +127,15 @@ init_smjs(struct module *module) { if (!spidermonkey_runtime_addref()) return; + /* Set smjs_ctx immediately after creating the JSContext, so + * that any error reports from SpiderMonkey are forwarded to + * smjs_error_reporter(). */ smjs_ctx = JS_NewContext(spidermonkey_runtime, 8192); if (!smjs_ctx) { spidermonkey_runtime_release(); return; } - JS_SetErrorReporter(smjs_ctx, error_reporter); - smjs_init_global_object(); smjs_init_elinks_object(); diff --git a/src/scripting/smjs/core.h b/src/scripting/smjs/core.h index 0542f5cb..ffbc82c1 100644 --- a/src/scripting/smjs/core.h +++ b/src/scripting/smjs/core.h @@ -10,6 +10,7 @@ struct string; extern JSContext *smjs_ctx; extern struct session *smjs_ses; +void smjs_error_reporter(JSContext *ctx, const char *message, JSErrorReport *report); void alert_smjs_error(unsigned char *msg); void init_smjs(struct module *module); From a0d624cd615702d041387b29d00f5128c900e567 Mon Sep 17 00:00:00 2001 From: Kalle Olavi Niemitalo Date: Sun, 7 Sep 2008 22:30:40 +0300 Subject: [PATCH 04/15] Hurd bug 22861: Do not select() exceptions from pipes. The GNU Hurd has a bug that can make select() report an exception in a pipe even though none has actually occurred. The typical result is that ELinks closes the pipe through which it internally passes all input events, such as keypresses. It then no longer reacts to what the user is trying to do. Work around the Hurd bug by making set_handlers() check whether the file descriptor refers to a pipe, and if so, pretend the caller did not provide any handler for exceptions. This is a minimal change that avoids slowing down the select() loop itself and does not require careful analysis of the callers to statically find out which file descriptors might refer to pipes. The extra stat() calls may slow ELinks down somewhat, but anyway it'll work better than it did without the patch, and if the Hurd bug is ever fixed, we can remove the workaround at that time. --- NEWS | 2 ++ src/main/select.c | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/NEWS b/NEWS index 66adcced..1c5090ae 100644 --- a/NEWS +++ b/NEWS @@ -30,6 +30,8 @@ includes the changes listed under "ELinks 0.11.4.GIT now" below. SSL errors especially in HTTP POST requests using GnuTLS. * bugs 1007, 1041: Display unrecognized lines in FTP directory listings, instead of annoying the user with error messages. +* Hurd bug 22861: Work around select() falsely reporting exceptions + in pipes. * minor bug 951: SpiderMonkey scripting objects used to prevent ELinks from removing files from the memory cache. * build bug 1044: Check whether -rdynamic works with libraries. diff --git a/src/main/select.c b/src/main/select.c index aab5349d..83d80197 100644 --- a/src/main/select.c +++ b/src/main/select.c @@ -10,6 +10,9 @@ #ifdef HAVE_SYS_SIGNAL_H #include #endif +#ifdef __GNU__ /* For GNU Hurd bug workaround in set_handlers() */ +#include /* OS/2 needs this after sys/types.h */ +#endif #include #ifdef HAVE_SYS_WAIT_H #include @@ -146,6 +149,21 @@ set_handlers(int fd, select_handler_T read_func, select_handler_T write_func, fd, FD_SETSIZE); if_assert_failed return; #endif +#ifdef __GNU__ + /* GNU Hurd pflocal bug : + * If ELinks does a select() where the initial exceptfds set + * includes a pipe that is not listed in the other fd_sets, + * then select() always reports an exception there. That + * makes Elinks think the pipe has failed and close it. + * To work around this bug, do not monitor exceptions for + * pipes on the Hurd. */ + if (error_func) { + struct stat st; + + if (fstat(fd, &st) == 0 && S_ISFIFO(st.st_mode)) + error_func = NULL; + } +#endif /* __GNU__ */ threads[fd].read_func = read_func; threads[fd].write_func = write_func; threads[fd].error_func = error_func; From c692bf82224eeef6002ca102b0e7631dea8ba863 Mon Sep 17 00:00:00 2001 From: Fabio Bonelli Date: Fri, 29 Aug 2008 13:27:00 +0200 Subject: [PATCH 05/15] 1045: fix "void function cannot return value" in formhist never_for_this_site(form) did return remember_form(form). In ELinks 0.11.0, both functions returned int, so this was OK. In commit 2b7788614f102db37e76ac612c148c32c208b623 however, the functions were changed to return void, as required by msg_box(). GCC still accepted the return statement but Sun Studio 11 did not. --- src/formhist/formhist.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/formhist/formhist.c b/src/formhist/formhist.c index 469dcdf5..621533ac 100644 --- a/src/formhist/formhist.c +++ b/src/formhist/formhist.c @@ -358,7 +358,7 @@ never_for_this_site(void *form_) struct formhist_data *form = form_; form->dontsave = 1; - return remember_form(form); + remember_form(form); } unsigned char * From 00bf5f7baf19048a04aebd39f25d7e5b1e954c9e Mon Sep 17 00:00:00 2001 From: Kalle Olavi Niemitalo Date: Mon, 15 Sep 2008 23:42:12 +0300 Subject: [PATCH 06/15] 1045: Temporarily mention in NEWS. --- NEWS | 3 +++ 1 file changed, 3 insertions(+) diff --git a/NEWS b/NEWS index 1c5090ae..f46f82ce 100644 --- a/NEWS +++ b/NEWS @@ -58,6 +58,9 @@ Bugs that should be removed from NEWS before the 0.12.0 release: * Global ECMAScript functions alert, open, and setTimeout again work with SEE. ELinks 0.12pre1 was the first release that supported SEE at all. +* build bug 1045: Fix ``void function cannot return value'' in + never_for_this_site() of src/formhist/formhist.c. ELinks 0.12pre1 + was the first release that had this bug. ELinks 0.12pre1: ---------------- From b0a01398af2477077e2f7221cbb1238d15656c98 Mon Sep 17 00:00:00 2001 From: Kalle Olavi Niemitalo Date: Sun, 21 Sep 2008 10:41:23 +0300 Subject: [PATCH 07/15] NEWS for ELinks 0.12pre2 --- NEWS | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/NEWS b/NEWS index f46f82ce..0f547340 100644 --- a/NEWS +++ b/NEWS @@ -5,11 +5,10 @@ You can see the complete list of recent changes, bugfixes and new features in the http://repo.or.cz/w/elinks.git[gitweb interface]. See the ChangeLog file for details. -ELinks 0.12pre1.GIT now: ------------------------- +ELinks 0.12pre2: +---------------- -To be released as 0.12pre2, 0.12rc1, or even 0.12.0. This branch also -includes the changes listed under "ELinks 0.11.4.GIT now" below. +This release also included the changes listed under "ELinks 0.11.5" below. * bug 954, enhancement 952: Keep track of ECMAScript form and input objects instead of constructing new ones on every access. When the @@ -219,10 +218,8 @@ Changes in the experimental SGML/DOM implementation: * enhancement: incremental parsing * and more. -ELinks 0.11.4.GIT now: ----------------------- - -To be released as 0.11.5. +ELinks 0.11.5: +-------------- * critical bug 1027 in user SMJS: make elinks.keymaps treat null and "none" as equivalent actions, avoiding a segfault From 319e05d106f8f0664bcc9f3548468f275bfb6c4e Mon Sep 17 00:00:00 2001 From: Kalle Olavi Niemitalo Date: Sun, 21 Sep 2008 11:45:22 +0300 Subject: [PATCH 08/15] ELinks 0.12pre2 --- configure.in | 2 +- doc/man/man1/elinks.1.in | 206 ++-- doc/man/man5/elinks.conf.5 | 2372 +++++++++++++++++------------------- doc/man/man5/elinkskeys.5 | 6 +- po/af.po | 415 ++++--- po/be.po | 415 ++++--- po/bg.po | 415 ++++--- po/ca.po | 415 ++++--- po/cs.po | 424 ++++--- po/da.po | 427 ++++--- po/de.po | 424 ++++--- po/el.po | 415 ++++--- po/es.po | 415 ++++--- po/et.po | 415 ++++--- po/fi.po | 415 ++++--- po/fr.po | 424 ++++--- po/gl.po | 415 ++++--- po/hr.po | 415 ++++--- po/hu.po | 424 ++++--- po/id.po | 415 ++++--- po/is.po | 415 ++++--- po/it.po | 424 ++++--- po/lt.po | 415 ++++--- po/nb.po | 415 ++++--- po/nl.po | 415 ++++--- po/pl.po | 424 ++++--- po/pt.po | 415 ++++--- po/pt_BR.po | 415 ++++--- po/ro.po | 415 ++++--- po/ru.po | 415 ++++--- po/sk.po | 415 ++++--- po/sr.po | 424 ++++--- po/sv.po | 415 ++++--- po/tr.po | 415 ++++--- po/uk.po | 415 ++++--- 35 files changed, 8287 insertions(+), 7239 deletions(-) diff --git a/configure.in b/configure.in index d00d8d27..0e9bd993 100644 --- a/configure.in +++ b/configure.in @@ -14,7 +14,7 @@ AC_CONFIG_SRCDIR([src/main/main.c]) AC_CONFIG_AUX_DIR(config) PACKAGE=elinks -VERSION=0.12pre1.GIT +VERSION=0.12pre2 AC_SUBST(PACKAGE) AC_SUBST(VERSION) AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Package version]) diff --git a/doc/man/man1/elinks.1.in b/doc/man/man1/elinks.1.in index f82d52ba..c0072e3c 100644 --- a/doc/man/man1/elinks.1.in +++ b/doc/man/man1/elinks.1.in @@ -1,50 +1,49 @@ .\" Title: elinks .\" Author: -.\" Generator: DocBook XSL Stylesheets v1.72.0 -.\" Date: 07/01/2008 +.\" Generator: DocBook XSL Stylesheets v1.73.2 +.\" Date: 09/21/2008 .\" Manual: The Elinks text-browser -.\" Source: ELinks 0.12pre1 +.\" Source: ELinks 0.12pre2 .\" -.TH "ELINKS" "1" "07/01/2008" "ELinks 0.12pre1" "The Elinks text\-browser" +.TH "ELINKS" "1" "09/21/2008" "ELinks 0\&.12pre2" "The Elinks text\-browser" .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .SH "NAME" -elinks \- lynx\-like alternative character mode WWW browser +elinks \- lynx-like alternative character mode WWW browser .SH "SYNOPSIS" \fIelinks\fR [OPTION]\&... [URL]\&... .sp .SH "DESCRIPTION" -\fIELinks\fR is a text mode WWW browser, supporting colors, table rendering, background downloading, menu driven configuration interface, tabbed browsing and slim code. +\fIELinks\fR is a text mode WWW browser, supporting colors, table rendering, background downloading, menu driven configuration interface, tabbed browsing and slim code\&. .sp -Frames are supported. You can have different file formats associated with external viewers. mailto: and telnet: are supported via external clients. +Frames are supported\&. You can have different file formats associated with external viewers\&. mailto: and telnet: are supported via external clients\&. .sp -ELinks can handle both local files and remote URLs. The main supported remote URL protocols are \fIHTTP\fR, \fIHTTPS\fR (with SSL support compiled in) and \fIFTP\fR. Additional protocol support exists for \fIBitTorrent\fR \fIfinger\fR, \fIGopher\fR, \fISMB\fR and \fINNTP\fR. +ELinks can handle both local files and remote URLs\&. The main supported remote URL protocols are \fIHTTP\fR, \fIHTTPS\fR (with SSL support compiled in) and \fIFTP\fR\&. Additional protocol support exists for \fIBitTorrent\fR \fIfinger\fR, \fIGopher\fR, \fISMB\fR and \fINNTP\fR\&. .sp -The homepage of \fIELinks\fR can be found at , where the ELinks manual is also hosted. +The homepage of \fIELinks\fR can be found at , where the ELinks manual is also hosted\&. .sp .SH "OPTIONS" -Most options can be set in the user interface or config file, so usually you do not need to care about them. Note that this list is roughly equivalent to the output of running ELinks with the option \-\-long\-help. -.sp +Most options can be set in the user interface or config file, so usually you do not need to care about them\&. Note that this list is roughly equivalent to the output of running ELinks with the option \-\-long\-help\&. .PP \fB\-anonymous\fR \fI[0|1]\fR (default: 0) .RS 4 Restricts ELinks -so it can run on an anonymous account. Local file browsing, downloads, and modification of options will be disabled. Execution of viewers is allowed, but entries in the association table can't be added or modified. +so it can run on an anonymous account\&. Local file browsing, downloads, and modification of options will be disabled\&. Execution of viewers is allowed, but entries in the association table can\'t be added or modified\&. .RE .PP \fB\-auto\-submit\fR \fI[0|1]\fR (default: 0) .RS 4 -Automatically submit the first form in the given URLs. +Automatically submit the first form in the given URLs\&. .RE .PP \fB\-base\-session\fR \fI\fR (default: 0) .RS 4 Used internally when opening ELinks -instances in new windows. The ID maps to information that will be used when creating the new instance. You don't want to use it. +instances in new windows\&. The ID maps to information that will be used when creating the new instance\&. You don\'t want to use it\&. .RE .PP \fB\-config\-dir\fR \fI\fR (default: "") @@ -52,126 +51,126 @@ instances in new windows. The ID maps to information that will be used when crea Path of the directory ELinks will read and write its config and runtime state files to instead of -\fI~/.elinks\fR. If the path does not begin with a '/' it is assumed to be relative to your +\fI~/\&.elinks\fR\&. If the path does not begin with a \'/\' it is assumed to be relative to your \fBHOME\fR -directory. +directory\&. .RE .PP \fB\-config\-dump\fR .RS 4 -Print a configuration file with options set to the built\-in defaults to stdout. +Print a configuration file with options set to the built\-in defaults to stdout\&. .RE .PP -\fB\-config\-file\fR \fI\fR (default: "elinks.conf") +\fB\-config\-file\fR \fI\fR (default: "elinks\&.conf") .RS 4 -Name of the configuration file that all configuration options will be read from and written to. It should be relative to -config\-dir. +Name of the configuration file that all configuration options will be read from and written to\&. It should be relative to +config\-dir\&. .RE .PP \fB\-config\-help\fR .RS 4 -Print help for configuration options and exit. +Print help for configuration options and exit\&. .RE .PP -\fB\-default\-mime\-type\fR (alias for mime.default_type) +\fB\-default\-mime\-type\fR (alias for mime\&.default_type) .RS 4 -The default MIME type used for documents of unknown type. +The default MIME type used for documents of unknown type\&. .RE .PP \fB\-default\-keys\fR \fI[0|1]\fR (default: 0) .RS 4 -When set, all keybindings from configuration files will be ignored. It forces use of default keybindings and will reset user\-defined ones on save. +When set, all keybindings from configuration files will be ignored\&. It forces use of default keybindings and will reset user\-defined ones on save\&. .RE .PP \fB\-dump\fR \fI[0|1]\fR (default: 0) .RS 4 -Print formatted plain\-text versions of given URLs to stdout. +Print formatted plain\-text versions of given URLs to stdout\&. .RE .PP -\fB\-dump\-charset\fR (alias for document.dump.codepage) +\fB\-dump\-charset\fR (alias for document\&.dump\&.codepage) .RS 4 -Codepage used when formatting dump output. +Codepage used when formatting dump output\&. .RE .PP -\fB\-dump\-color\-mode\fR (alias for document.dump.color_mode) +\fB\-dump\-color\-mode\fR (alias for document\&.dump\&.color_mode) .RS 4 Color mode used with -\-dump. +\-dump\&. .RE .PP -\fB\-dump\-width\fR (alias for document.dump.width) +\fB\-dump\-width\fR (alias for document\&.dump\&.width) .RS 4 -Width of the dump output. +Width of the dump output\&. .RE .PP \fB\-eval\fR .RS 4 -Specify configuration file directives on the command\-line which will be evaluated after all configuration files has been read. Example usage: -\fB\-eval 'set protocol.file.allow_special_files = 1'\fR +Specify configuration file directives on the command\-line which will be evaluated after all configuration files has been read\&. Example usage: +\fB\-eval \'set protocol\&.file\&.allow_special_files = 1\'\fR .RE .PP \fB\-force\-html\fR .RS 4 Makes ELinks -assume documents of unknown types are HTML. Useful when using +assume documents of unknown types are HTML\&. Useful when using ELinks -as an external viewer from MUAs. This is equivalent to -\fB\-default\-mime\-type\fR\fB text/html\fR. +as an external viewer from MUAs\&. This is equivalent to +\fB\-default\-mime\-type\fR\fB text/html\fR\&. .RE .PP \fB\-?\fR, \fB\-h\fR, \fB\-help\fR .RS 4 -Print usage help and exit. +Print usage help and exit\&. .RE .PP \fB\-localhost\fR \fI[0|1]\fR (default: 0) .RS 4 Restricts ELinks -to work offline and only connect to servers with local addresses (ie. 127.0.0.1). No connections to remote servers will be permitted. +to work offline and only connect to servers with local addresses (ie\&. 127\&.0\&.0\&.1)\&. No connections to remote servers will be permitted\&. .RE .PP \fB\-long\-help\fR .RS 4 -Print detailed usage help and exit. +Print detailed usage help and exit\&. .RE .PP \fB\-lookup\fR .RS 4 -Look up specified host and print all DNS resolved IP addresses. +Look up specified host and print all DNS resolved IP addresses\&. .RE .PP \fB\-no\-connect\fR \fI[0|1]\fR (default: 0) .RS 4 Run ELinks -as a separate instance instead of connecting to an existing instance. Note that normally no runtime state files (bookmarks, history, etc.) are written to the disk when this option is used. See also -\-touch\-files. +as a separate instance instead of connecting to an existing instance\&. Note that normally no runtime state files (bookmarks, history, etc\&.) are written to the disk when this option is used\&. See also +\-touch\-files\&. .RE .PP \fB\-no\-home\fR \fI[0|1]\fR (default: 0) .RS 4 -Disables creation and use of files in the user specific home configuration directory (\fI~/.elinks\fR). It forces default configuration values to be used and disables saving of runtime state files. +Disables creation and use of files in the user specific home configuration directory (\fI~/\&.elinks\fR)\&. It forces default configuration values to be used and disables saving of runtime state files\&. .RE .PP -\fB\-no\-numbering\fR (alias for document.dump.numbering) +\fB\-no\-numbering\fR (alias for document\&.dump\&.numbering) .RS 4 -Prevents printing of link number in dump output. Note that this really affects only -\-dump, nothing else. +Prevents printing of link number in dump output\&. Note that this really affects only +\-dump, nothing else\&. .RE .PP -\fB\-no\-references\fR (alias for document.dump.references) +\fB\-no\-references\fR (alias for document\&.dump\&.references) .RS 4 -Prevents printing of references (URIs) of document links in dump output. Note that this really affects only -\-dump, nothing else. +Prevents printing of references (URIs) of document links in dump output\&. Note that this really affects only +\-dump, nothing else\&. .RE .PP \fB\-remote\fR .RS 4 Control a remote ELinks -instance by passing commands to it. The option takes an additional argument containing the method which should be invoked and any parameters that should be passed to it. For ease of use, the additional method argument can be omitted in which case any URL arguments will be opened in new tabs in the remote instance. Following is a list of the supported methods: +instance by passing commands to it\&. The option takes an additional argument containing the method which should be invoked and any parameters that should be passed to it\&. For ease of use, the additional method argument can be omitted in which case any URL arguments will be opened in new tabs in the remote instance\&. Following is a list of the supported methods: .sp .RS 4 \h'-04'\(bu\h'+03'\fBping()\fR: look for a remote instance @@ -210,34 +209,34 @@ instance by passing commands to it. The option takes an additional argument cont .RS 4 ID of session ring this ELinks -session should connect to. +session should connect to\&. ELinks works in so\-called session rings, whereby all instances of ELinks -are interconnected and share state (cache, bookmarks, cookies, and so on). By default, all +are interconnected and share state (cache, bookmarks, cookies, and so on)\&. By default, all ELinks -instances connect to session ring 0. You can change that behaviour with this switch and form as many session rings as you want. Obviously, if the session\-ring with this number doesn't exist yet, it's created and this +instances connect to session ring 0\&. You can change that behaviour with this switch and form as many session rings as you want\&. Obviously, if the session\-ring with this number doesn\'t exist yet, it\'s created and this ELinks -instance will become the master instance (that usually doesn't matter for you as a user much). Note that you usually don't want to use this unless you're a developer and you want to do some testing \- if you want the +instance will become the master instance (that usually doesn\'t matter for you as a user much)\&. Note that you usually don\'t want to use this unless you\'re a developer and you want to do some testing \- if you want the ELinks instances each running standalone, rather use the \-no\-connect -command\-line option. Also note that normally no runtime state files are written to the disk when this option is used. See also -\-touch\-files. +command\-line option\&. Also note that normally no runtime state files are written to the disk when this option is used\&. See also +\-touch\-files\&. .RE .PP \fB\-source\fR \fI[0|1]\fR (default: 0) .RS 4 -Print given URLs in source form to stdout. +Print given URLs in source form to stdout\&. .RE .PP \fB\-touch\-files\fR \fI[0|1]\fR (default: 0) .RS 4 -When enabled, runtime state files (bookmarks, history, etc.) are written to disk, even when +When enabled, runtime state files (bookmarks, history, etc\&.) are written to disk, even when \-no\-connect or \-session\-ring -is used. The option has no effect if not used in conjunction with any of these options. +is used\&. The option has no effect if not used in conjunction with any of these options\&. .RE .PP \fB\-verbose\fR \fI\fR (default: 1) @@ -261,26 +260,26 @@ The verbose level controls what messages are shown at start up and while running .RS 4 Print ELinks -version information and exit. +version information and exit\&. .RE -Generated using output from ELinks version 0.12pre1. +Generated using output from ELinks version 0\&.12pre2\&. .sp .SH "ENVIRONMENT VARIABLES" .PP COMSPEC, SHELL .RS 4 -The shell used for File \-> OS Shell on DOS/Windows and UNIX, respectively. +The shell used for File \-> OS Shell on DOS/Windows and UNIX, respectively\&. .RE .PP EDITOR .RS 4 -The program to use for external editor (when editing textareas). +The program to use for external editor (when editing textareas)\&. .RE .PP ELINKS_CONFDIR .RS 4 -The location of the directory containing configuration files. If not set the default is -~/.elinks/. +The location of the directory containing configuration files\&. If not set the default is +~/\&.elinks/\&. .RE .PP ELINKS_TWTERM, LINKS_TWTERM @@ -288,7 +287,7 @@ ELINKS_TWTERM, LINKS_TWTERM The command to run when selecting File \-> New window and if TWDISPLAY is defined (default -twterm \-e). +twterm \-e)\&. .RE .PP ELINKS_XTERM, LINKS_XTERM @@ -296,110 +295,109 @@ ELINKS_XTERM, LINKS_XTERM The command to run when selecting File \-> New window and if DISPLAY is defined (default -xterm \-e). +xterm \-e)\&. .RE .PP FTP_PROXY, HTTP_PROXY, HTTPS_PROXY .RS 4 -The host to proxy the various protocol traffic through. +The host to proxy the various protocol traffic through\&. .RE .PP NO_PROXY .RS 4 -A comma separated list of URLs which should not be proxied. +A comma separated list of URLs which should not be proxied\&. .RE .PP HOME .RS 4 -The path to the users home directory. Used when expanding -~/. +The path to the users home directory\&. Used when expanding +~/\&. .RE .PP WWW_HOME .RS 4 Homepage location (as in -\fBlynx\fR(1)). +\fBlynx\fR(1))\&. .RE .SH "FILES" -Configuration files controlled by ELinks are located in the user configuration directory, defaulting to \fI~/.elinks/\fR. In addition to the files listed below, a user defined CSS stylesheet can be defined using the \fIdocument.css.stylesheet\fR option. -.sp +Configuration files controlled by ELinks are located in the user configuration directory, defaulting to \fI~/\&.elinks/\fR\&. In addition to the files listed below, a user defined CSS stylesheet can be defined using the \fIdocument\&.css\&.stylesheet\fR option\&. .PP -@sysconfdir@/elinks.conf +@sysconfdir@/elinks\&.conf .RS 4 -Site\-wide configuration file. +Site\-wide configuration file\&. .RE .PP -~/.elinks/elinks.conf +~/\&.elinks/elinks\&.conf .RS 4 -Per\-user config file, loaded after site\-wide configuration. +Per\-user config file, loaded after site\-wide configuration\&. .RE .PP -~/.elinks/bookmarks +~/\&.elinks/bookmarks .RS 4 -Bookmarks file. +Bookmarks file\&. .RE .PP -~/.elinks/cookies +~/\&.elinks/cookies .RS 4 -Cookies file. +Cookies file\&. .RE .PP -~/.elinks/exmodehist +~/\&.elinks/exmodehist .RS 4 -Exmode history file. +Exmode history file\&. .RE .PP -~/.elinks/formhist +~/\&.elinks/formhist .RS 4 -Form history file. +Form history file\&. .RE .PP -~/.elinks/globhist +~/\&.elinks/globhist .RS 4 -History file containing most recently visited URLs. +History file containing most recently visited URLs\&. .RE .PP -~/.elinks/gotohist +~/\&.elinks/gotohist .RS 4 -GoTo URL dialog history file. +GoTo URL dialog history file\&. .RE .PP -~/.elinks/hooks.{js,lua,pl,py,rb,scm} +~/\&.elinks/hooks\&.{js,lua,pl,py,rb,scm} .RS 4 -Browser scripting hooks. +Browser scripting hooks\&. .RE .PP -~/.elinks/searchhist +~/\&.elinks/searchhist .RS 4 -Search history file. +Search history file\&. .RE .PP -~/.elinks/socket +~/\&.elinks/socket .RS 4 Internal \fIELinks\fR -socket for communication between its instances. +socket for communication between its instances\&. .RE .PP -~/.mailcap, /etc/mailcap +~/\&.mailcap, /etc/mailcap .RS 4 -Mappings of MIME types to external handlers. +Mappings of MIME types to external handlers\&. .RE .PP -~/.mime.types, /etc/mime.types +~/\&.mime\&.types, /etc/mime\&.types .RS 4 -Mappings of file extensions to MIME types. +Mappings of file extensions to MIME types\&. .RE .SH "BUGS" -Please report any other bugs you find to the either the ELinks mailing list at or if you prefer enter them into the bug tracking system . More information about how to get in contact with developers and getting help can be found on the community page . +Please report any other bugs you find to the either the ELinks mailing list at or if you prefer enter them into the bug tracking system \&. More information about how to get in contact with developers and getting help can be found on the community page \&. .sp .SH "LICENSE" -\fIELinks\fR 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; version 2 of the License. +\fIELinks\fR 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; version 2 of the License\&. .sp .SH "AUTHORS" -The \fILinks\fR browser \- on which \fIELinks\fR is based \- was written by Mikulas Patocka . \fIELinks\fR was written by Petr Baudis . See file AUTHORS in the source tree for a list of people contributing to this project. +The \fILinks\fR browser \- on which \fIELinks\fR is based \- was written by Mikulas Patocka \&. \fIELinks\fR was written by Petr Baudis \&. See file AUTHORS in the source tree for a list of people contributing to this project\&. .sp -This manual page was written by Peter Gervai , using excerpts from a (yet?) unknown \fILinks\fR fan for the \fIDebian GNU/Linux system\fR (but may be used by others). Contributions from Francis A. Holop. Extended, clarified and made more up\-to\-date by Petr Baudis . Updated by Zas . The conversion to Asciidoc and trimming was done by Jonas Fonseca . +This manual page was written by Peter Gervai , using excerpts from a (yet?) unknown \fILinks\fR fan for the \fIDebian GNU/Linux system\fR (but may be used by others)\&. Contributions from Francis A\&. Holop\&. Extended, clarified and made more up\-to\-date by Petr Baudis \&. Updated by Zas \&. The conversion to Asciidoc and trimming was done by Jonas Fonseca \&. .sp .SH "SEE ALSO" \fBelinkskeys\fR(5), \fBelinks.conf\fR(5), \fBlinks\fR(1), \fBlynx\fR(1), \fBw3m\fR(1), \fBwget\fR(1) diff --git a/doc/man/man5/elinks.conf.5 b/doc/man/man5/elinks.conf.5 index a1586c59..d7711f52 100644 --- a/doc/man/man5/elinks.conf.5 +++ b/doc/man/man5/elinks.conf.5 @@ -1,11 +1,11 @@ .\" Title: elinks.conf .\" Author: -.\" Generator: DocBook XSL Stylesheets v1.72.0 -.\" Date: 07/01/2008 +.\" Generator: DocBook XSL Stylesheets v1.73.2 +.\" Date: 09/21/2008 .\" Manual: ELinks configuration file -.\" Source: ELinks 0.12pre1 +.\" Source: ELinks 0.12pre2 .\" -.TH "ELINKS.CONF" "5" "07/01/2008" "ELinks 0.12pre1" "ELinks configuration file" +.TH "ELINKS\&.CONF" "5" "09/21/2008" "ELinks 0\&.12pre2" "ELinks configuration file" .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) @@ -23,14 +23,14 @@ include "" .fi .RE .SH "DESCRIPTION" -The elinks.conf file contains configuration information for ELinks. It can be used to configure the behaviour of ELinks in a wide variety of ways: protocol behaviour, keybindings, colors used for rendering and for the user interface. +The elinks\&.conf file contains configuration information for ELinks\&. It can be used to configure the behaviour of ELinks in a wide variety of ways: protocol behaviour, keybindings, colors used for rendering and for the user interface\&. .sp -It is read at startup and saved only when requested. All options described in this document can be fully configured from within ELinks so no editing of elinks.conf is needed. +It is read at startup and saved only when requested\&. All options described in this document can be fully configured from within ELinks so no editing of elinks\&.conf is needed\&. .sp -Note that MIME\-related options used for specifying handlers of various MIME types are NOT described in this document. Documentation for these options can be found at the ELinks homepage. Keybindings can also be specified in elinks.conf. This is described in \fBelinkskeys\fR(5). +Note that MIME\-related options used for specifying handlers of various MIME types are NOT described in this document\&. Documentation for these options can be found at the ELinks homepage\&. Keybindings can also be specified in elinks\&.conf\&. This is described in \fBelinkskeys\fR(5)\&. .sp .SH "SYNTAX" -The syntax of the configuration file is very simple. The elinks.conf file is a free\-form ASCII text file. The file may contain extra tabs and newlines for formatting purposes. Keywords in the file are case\-sensitive. Comments may be placed anywhere within the file (except within quotes). Comments begin with the # character and end at the end of the line. +The syntax of the configuration file is very simple\&. The elinks\&.conf file is a free\-form ASCII text file\&. The file may contain extra tabs and newlines for formatting purposes\&. Keywords in the file are case\-sensitive\&. Comments may be placed anywhere within the file (except within quotes)\&. Comments begin with the # character and end at the end of the line\&. .sp .SH "EXAMPLES" Some sample settings: @@ -39,23 +39,22 @@ Some sample settings: .RS 4 .nf # Use asynchronous DNS resolver? -set connection.async_dns = 1 -# horizontal text margin. -set document.browse.margin_width = 3 -# Default document codepage. -set document.codepage.assume = "ISO\-8859\-1" +set connection\&.async_dns = 1 +# horizontal text margin\&. +set document\&.browse\&.margin_width = 3 +# Default document codepage\&. +set document\&.codepage\&.assume = "ISO\-8859\-1" # User defined protocol handlers -set protocol.user.mailto.unix = "mutt %h \-s \e"%s\e"" +set protocol\&.user\&.mailto\&.unix = "mutt %h \-s \e"%s\e"" .fi .RE .SH "OPTIONS" -Generated using output from ELinks version 0.12pre1. +Generated using output from ELinks version 0\&.12pre2\&. .sp .SS "bookmarks (Bookmarks)" -Bookmark options. -.sp +Bookmark options\&. .PP -bookmarks.file_format \fB\fR (default: 0) +bookmarks\&.file_format \fB\fR (default: 0) .RS 4 File format for bookmarks (affects both reading and saving): .sp @@ -70,19 +69,18 @@ format .RE .RE .PP -bookmarks.folder_state \fB[0|1]\fR (default: 1) +bookmarks\&.folder_state \fB[0|1]\fR (default: 1) .RS 4 When saving bookmarks also store whether folders are expanded or not, so the look of the bookmark dialog is kept across ELinks -sessions. If disabled all folders will appear unexpanded next time +sessions\&. If disabled all folders will appear unexpanded next time ELinks -is run. +is run\&. .RE .SS "config (Configuration system)" -Configuration handling options. -.sp +Configuration handling options\&. .PP -config.comments \fB\fR (default: 3) +config\&.comments \fB\fR (default: 3) .RS 4 Amount of comments automatically written to the config file: .sp @@ -103,12 +101,12 @@ Amount of comments automatically written to the config file: .RE .RE .PP -config.indentation \fB\fR (default: 2) +config\&.indentation \fB\fR (default: 2) .RS 4 -Shift width of one indentation level in the configuration file. Zero means that no indentation is performed at all when saving the configuration. +Shift width of one indentation level in the configuration file\&. Zero means that no indentation is performed at all when saving the configuration\&. .RE .PP -config.saving_style \fB\fR (default: 3) +config\&.saving_style \fB\fR (default: 3) .RS 4 Determines what happens when you tell ELinks @@ -133,95 +131,91 @@ session are added at the end of the file .RE .RE .PP -config.i18n \fB[0|1]\fR (default: 0) +config\&.i18n \fB[0|1]\fR (default: 0) .RS 4 -If set to 1, comments in the configuration file will be translated to the language used by UI. Note that if you have different language set in different terminals, the language used in the configuration file MAY be the same as on the terminal where you saved the file, but it should be generally considered unpredictable. +If set to 1, comments in the configuration file will be translated to the language used by UI\&. Note that if you have different language set in different terminals, the language used in the configuration file MAY be the same as on the terminal where you saved the file, but it should be generally considered unpredictable\&. .RE .PP -config.saving_style_w \fB[0|1]\fR (default: 0) +config\&.saving_style_w \fB[0|1]\fR (default: 0) .RS 4 -This is internal option used when displaying a warning about obsolete config.saving_style. You shouldn't touch it. +This is internal option used when displaying a warning about obsolete config\&.saving_style\&. You shouldn\'t touch it\&. .RE .PP -config.show_template \fB[0|1]\fR (default: 0) +config\&.show_template \fB[0|1]\fR (default: 0) .RS 4 -Show template options in autocreated trees in the options manager and save them to the configuration file. +Show template options in autocreated trees in the options manager and save them to the configuration file\&. .RE .SS "connection (Connections)" -Connection options. -.sp +Connection options\&. .PP -connection.async_dns \fB[0|1]\fR (default: 1) +connection\&.async_dns \fB[0|1]\fR (default: 1) .RS 4 -Whether to use asynchronous DNS resolving. +Whether to use asynchronous DNS resolving\&. .RE .PP -connection.max_connections \fB\fR (default: 10) +connection\&.max_connections \fB\fR (default: 10) .RS 4 -Maximum number of concurrent connections. +Maximum number of concurrent connections\&. .RE .PP -connection.max_connections_to_host \fB\fR (default: 2) +connection\&.max_connections_to_host \fB\fR (default: 2) .RS 4 -Maximum number of concurrent connections to a given host. +Maximum number of concurrent connections to a given host\&. .RE .PP -connection.receive_timeout \fB\fR (default: 120) +connection\&.receive_timeout \fB\fR (default: 120) .RS 4 -Receive timeout (in seconds). +Receive timeout (in seconds)\&. .RE .PP -connection.retries \fB\fR (default: 3) +connection\&.retries \fB\fR (default: 3) .RS 4 -Number of tries to establish a connection. Zero means try forever. +Number of tries to establish a connection\&. Zero means try forever\&. .RE .PP -connection.try_ipv4 \fB[0|1]\fR (default: 1) +connection\&.try_ipv4 \fB[0|1]\fR (default: 1) .RS 4 -Whether to try to connect to a host over IPv4. Note that if -connection.try_ipv6 -is enabled too, it takes precedence. And better do not touch this at all unless you are sure what are you doing. Note that you can also force a given protocol to be used on a per\-connection basis by using a URL in the style of e.g. -\fIhttp4://elinks.cz/\fR. +Whether to try to connect to a host over IPv4\&. Note that if +connection\&.try_ipv6 +is enabled too, it takes precedence\&. And better do not touch this at all unless you are sure what are you doing\&. Note that you can also force a given protocol to be used on a per\-connection basis by using a URL in the style of e\&.g\&. +\fIhttp4://elinks\&.cz/\fR\&. .RE .PP -connection.try_ipv6 \fB[0|1]\fR (default: 1) +connection\&.try_ipv6 \fB[0|1]\fR (default: 1) .RS 4 -Whether to try to connect to a host over IPv6. Note that you can also force a given protocol to be used on a per\-connection basis by using a URL in the style of e.g. -\fIhttp6://elinks.cz/\fR. +Whether to try to connect to a host over IPv6\&. Note that you can also force a given protocol to be used on a per\-connection basis by using a URL in the style of e\&.g\&. +\fIhttp6://elinks\&.cz/\fR\&. .RE .PP -connection.unrestartable_receive_timeout \fB\fR (default: 600) +connection\&.unrestartable_receive_timeout \fB\fR (default: 600) .RS 4 -Timeout for non\-restartable connections (in seconds). +Timeout for non\-restartable connections (in seconds)\&. .RE -.SS "connection.ssl (SSL)" -SSL options. -.sp +.SS "connection\&.ssl (SSL)" +SSL options\&. .PP -connection.ssl.cert_verify \fB[0|1]\fR (default: 0) +connection\&.ssl\&.cert_verify \fB[0|1]\fR (default: 0) .RS 4 -Verify the peer's SSL certificate. Note that this needs extensive configuration of OpenSSL by the user. +Verify the peer\'s SSL certificate\&. Note that this needs extensive configuration of OpenSSL by the user\&. .RE -.SS "connection.ssl.client_cert (Client Certificates)" -X509 client certificate options. -.sp +.SS "connection\&.ssl\&.client_cert (Client Certificates)" +X509 client certificate options\&. .PP -connection.ssl.client_cert.enable \fB[0|1]\fR (default: 0) +connection\&.ssl\&.client_cert\&.enable \fB[0|1]\fR (default: 0) .RS 4 -Enable or not the sending of X509 client certificates to servers which request them. +Enable or not the sending of X509 client certificates to servers which request them\&. .RE .PP -connection.ssl.client_cert.file \fB\fR (default: "") +connection\&.ssl\&.client_cert\&.file \fB\fR (default: "") .RS 4 -The location of a file containing the client certificate and unencrypted private key in PEM format. If unset, the file pointed to by the +The location of a file containing the client certificate and unencrypted private key in PEM format\&. If unset, the file pointed to by the \fBX509_CLIENT_CERT\fR -variable is used instead. +variable is used instead\&. .RE .SS "cookies (Cookies)" -Cookies options. -.sp +Cookies options\&. .PP -cookies.accept_policy \fB\fR (default: 2) +cookies\&.accept_policy \fB\fR (default: 2) .RS 4 Cookies accepting policy: .sp @@ -238,82 +232,80 @@ Cookies accepting policy: .RE .RE .PP -cookies.max_age \fB\fR (default: \-1) +cookies\&.max_age \fB\fR (default: \-1) .RS 4 Cookie maximum age (in days): .sp .RS 4 -\h'-04'\(bu\h'+03'\-1 is use cookie's expiration date if any +\h'-04'\(bu\h'+03'\-1 is use cookie\'s expiration date if any .RE .sp .RS 4 -\h'-04'\(bu\h'+03'0 is force expiration at the end of session, ignoring cookie's expiration date +\h'-04'\(bu\h'+03'0 is force expiration at the end of session, ignoring cookie\'s expiration date .RE .sp .RS 4 -\h'-04'\(bu\h'+03'1+ is use cookie's expiration date, but limit age to the given number of days +\h'-04'\(bu\h'+03'1+ is use cookie\'s expiration date, but limit age to the given number of days .RE .RE .PP -cookies.paranoid_security \fB[0|1]\fR (default: 0) +cookies\&.paranoid_security \fB[0|1]\fR (default: 0) .RS 4 -When enabled, we'll require three dots in cookies domain for all non\-international domains (instead of just two dots). Some countries have generic second level domains (eg. .com.pl, .co.uk) and allowing sites to set cookies for these generic domains could potentially be very bad. Note, it is off by default as it breaks a lot of sites. +When enabled, we\'ll require three dots in cookies domain for all non\-international domains (instead of just two dots)\&. Some countries have generic second level domains (eg\&. \&.com\&.pl, \&.co\&.uk) and allowing sites to set cookies for these generic domains could potentially be very bad\&. Note, it is off by default as it breaks a lot of sites\&. .RE .PP -cookies.save \fB[0|1]\fR (default: 1) +cookies\&.save \fB[0|1]\fR (default: 1) .RS 4 -Whether cookies should be loaded from and saved to disk. +Whether cookies should be loaded from and saved to disk\&. .RE .PP -cookies.resave \fB[0|1]\fR (default: 1) +cookies\&.resave \fB[0|1]\fR (default: 1) .RS 4 -Save cookies after each change in cookies list? No effect when cookie saving (cookies.save) is off. +Save cookies after each change in cookies list? No effect when cookie saving (cookies\&.save) is off\&. .RE .SS "document (Document)" -Document options. -.sp -.SS "document.browse (Browsing)" -Document browsing options (mainly interactivity). +Document options\&. .sp +.SS "document\&.browse (Browsing)" +Document browsing options (mainly interactivity)\&. .PP -document.browse.margin_width \fB\fR (default: 3) +document\&.browse\&.margin_width \fB\fR (default: 3) .RS 4 -Horizontal text margin. +Horizontal text margin\&. .RE .PP -document.browse.refresh \fB[0|1]\fR (default: 1) +document\&.browse\&.refresh \fB[0|1]\fR (default: 1) .RS 4 -Automatically follow document\-specified refresh directives (' refresh' tags). Web\-page authors use these to instruct the browser to reload a document at a given interval or to load another page. Regardless of the value the refresh URI is accessible as a link. Use the -document.browse.minimum_refresh_time -to control the minimum number of seconds a refresh will wait. +Automatically follow document\-specified refresh directives (\' refresh\' tags)\&. Web\-page authors use these to instruct the browser to reload a document at a given interval or to load another page\&. Regardless of the value the refresh URI is accessible as a link\&. Use the +document\&.browse\&.minimum_refresh_time +to control the minimum number of seconds a refresh will wait\&. .RE .PP -document.browse.minimum_refresh_time \fB\fR (default: 1000) +document\&.browse\&.minimum_refresh_time \fB\fR (default: 1000) .RS 4 -The minimum number of milliseconds that should pass before refreshing. If set to zero the document refresh time is used unchanged. It can fix going back in history for some sites that use refreshing with zero values. +The minimum number of milliseconds that should pass before refreshing\&. If set to zero the document refresh time is used unchanged\&. It can fix going back in history for some sites that use refreshing with zero values\&. .RE .PP -document.browse.table_move_order \fB[0|1]\fR (default: 0) +document\&.browse\&.table_move_order \fB[0|1]\fR (default: 0) .RS 4 -Move by columns in table, instead of rows. +Move by columns in table, instead of rows\&. .RE -.SS "document.browse.accesskey (Access keys)" -Options for handling of link access keys. An HTML document can use the ACCESSKEY attribute to assign an access key to an element. When an access key is pressed, the corresponding element will be given focus. -.sp +.SS "document\&.browse\&.accesskey (Access keys)" +Options for handling of link access keys\&. An HTML document can use the ACCESSKEY attribute to assign an access key to an element\&. When an access key is pressed, the corresponding element will be given focus\&. .PP -document.browse.accesskey.auto_follow \fB[0|1]\fR (default: 0) +document\&.browse\&.accesskey\&.auto_follow \fB[0|1]\fR (default: 0) .RS 4 -Automatically follow a link or submit a form if appropriate accesskey is pressed \(en this is the standard behaviour, but it's considered dangerous. +Automatically follow a link or submit a form if appropriate accesskey is pressed \(en this is the standard behaviour, but it\'s considered dangerous\&. .RE .PP -document.browse.accesskey.display \fB[0|1]\fR (default: 0) +document\&.browse\&.accesskey\&.display \fB[0|1]\fR (default: 0) .RS 4 -Display access key in link info. +Display access key in link info\&. .RE .PP -document.browse.accesskey.priority \fB\fR (default: 0) +document\&.browse\&.accesskey\&.priority \fB\fR (default: 0) .RS 4 -Priority of 'accesskey' HTML attribute: +Priority of \'accesskey\' HTML attribute: .sp .RS 4 \h'-04'\(bu\h'+03'0 is first try all normal bindings; if it fails, check accesskey @@ -327,54 +319,52 @@ Priority of 'accesskey' HTML attribute: \h'-04'\(bu\h'+03'2 is first check accesskey (this can be dangerous) .RE .RE -.SS "document.browse.forms (Forms)" -Options for handling of the forms interaction. -.sp +.SS "document\&.browse\&.forms (Forms)" +Options for handling of the forms interaction\&. .PP -document.browse.forms.auto_submit \fB[0|1]\fR (default: 1) +document\&.browse\&.forms\&.auto_submit \fB[0|1]\fR (default: 1) .RS 4 -Automagically submit a form when enter is pressed with a text field selected. +Automagically submit a form when enter is pressed with a text field selected\&. .RE .PP -document.browse.forms.confirm_submit \fB[0|1]\fR (default: 1) +document\&.browse\&.forms\&.confirm_submit \fB[0|1]\fR (default: 1) .RS 4 -Ask for confirmation when submitting a form. +Ask for confirmation when submitting a form\&. .RE .PP -document.browse.forms.input_size \fB\fR (default: 20) +document\&.browse\&.forms\&.input_size \fB\fR (default: 20) .RS 4 -Default form input size if none is specified. +Default form input size if none is specified\&. .RE .PP -document.browse.forms.insert_mode \fB[0|1]\fR (default: 1) +document\&.browse\&.forms\&.insert_mode \fB[0|1]\fR (default: 1) .RS 4 -The setting for this option affects how key presses are handled when one selects a text\-input form\-field. When enabled, one must explicitly 'enter' a selected text\-field to edit it; this prevents text fields from capturing key presses, such as presses of a scroll key, when it is inadvertently selected. When disabled, key presses are always inserted into a selected text field. +The setting for this option affects how key presses are handled when one selects a text\-input form\-field\&. When enabled, one must explicitly \'enter\' a selected text\-field to edit it; this prevents text fields from capturing key presses, such as presses of a scroll key, when it is inadvertently selected\&. When disabled, key presses are always inserted into a selected text field\&. .RE .PP -document.browse.forms.editor \fB\fR (default: "") +document\&.browse\&.forms\&.editor \fB\fR (default: "") .RS 4 Path to the executable that ELinks -should launch when the user requests to edit a textarea with an external editor. If this is blank, +should launch when the user requests to edit a textarea with an external editor\&. If this is blank, ELinks will use the value of the environmental variable -\fB$EDITOR\fR. If +\fB$EDITOR\fR\&. If \fB$EDITOR\fR is empty or not set, ELinks will then default to -\fBvi\fR. +\fBvi\fR\&. .RE .PP -document.browse.forms.show_formhist \fB[0|1]\fR (default: 0) +document\&.browse\&.forms\&.show_formhist \fB[0|1]\fR (default: 0) .RS 4 -Ask if a login form should be saved to file or not. This option only disables the dialog, already saved login forms are unaffected. +Ask if a login form should be saved to file or not\&. This option only disables the dialog, already saved login forms are unaffected\&. .RE -.SS "document.browse.images (Images)" -Options for handling of images. -.sp +.SS "document\&.browse\&.images (Images)" +Options for handling of images\&. .PP -document.browse.images.display_style \fB\fR (default: 2) +document\&.browse\&.images\&.display_style \fB\fR (default: 2) .RS 4 Display style for image tags when displayed: .sp @@ -402,7 +392,7 @@ attribute if possible, filename if not .RE .RE .PP -document.browse.images.filename_maxlen \fB\fR (default: 0) +document\&.browse\&.images\&.filename_maxlen \fB\fR (default: 0) .RS 4 Maximum length of image filename when displayed: .sp @@ -415,7 +405,7 @@ Maximum length of image filename when displayed: .RE .RE .PP -document.browse.images.image_link_tagging \fB\fR (default: 1) +document\&.browse\&.images\&.image_link_tagging \fB\fR (default: 1) .RS 4 When to enclose image links: .sp @@ -432,17 +422,17 @@ When to enclose image links: .RE .RE .PP -document.browse.images.image_link_prefix \fB\fR (default: "[") +document\&.browse\&.images\&.image_link_prefix \fB\fR (default: "[") .RS 4 -Prefix string to use to mark image links. +Prefix string to use to mark image links\&. .RE .PP -document.browse.images.image_link_suffix \fB\fR (default: "]") +document\&.browse\&.images\&.image_link_suffix \fB\fR (default: "]") .RS 4 -Suffix string to use to mark image links. +Suffix string to use to mark image links\&. .RE .PP -document.browse.images.label_maxlen \fB\fR (default: 0) +document\&.browse\&.images\&.label_maxlen \fB\fR (default: 0) .RS 4 Maximum length of image label (alt/title): .sp @@ -455,34 +445,33 @@ Maximum length of image label (alt/title): .RE .RE .PP -document.browse.images.show_as_links \fB[0|1]\fR (default: 0) +document\&.browse\&.images\&.show_as_links \fB[0|1]\fR (default: 0) .RS 4 Display links to images without an alt -attribute. If this option is off, these images are completely invisible. +attribute\&. If this option is off, these images are completely invisible\&. .RE .PP -document.browse.images.show_any_as_links \fB[0|1]\fR (default: 1) +document\&.browse\&.images\&.show_any_as_links \fB[0|1]\fR (default: 1) .RS 4 Display links to any images in the document, regardless of them having an alt -attribute or not. If this option is off, the alt attribute contents is shown, but as normal text, not selectable as a link. +attribute or not\&. If this option is off, the alt attribute contents is shown, but as normal text, not selectable as a link\&. .RE -.SS "document.browse.links (Links)" -Options for handling of links to other documents. -.sp +.SS "document\&.browse\&.links (Links)" +Options for handling of links to other documents\&. .PP -document.browse.links.color_dirs \fB[0|1]\fR (default: 1) +document\&.browse\&.links\&.color_dirs \fB[0|1]\fR (default: 1) .RS 4 -Highlight links to directories in FTP and local directory listing. +Highlight links to directories in FTP and local directory listing\&. .RE .PP -document.browse.links.numbering \fB[0|1]\fR (default: 0) +document\&.browse\&.links\&.numbering \fB[0|1]\fR (default: 0) .RS 4 -Display numbers next to the links. +Display numbers next to the links\&. .RE .PP -document.browse.links.target_blank \fB\fR (default: 0) +document\&.browse\&.links\&.target_blank \fB\fR (default: 0) .RS 4 Define how to handle links having target=_blank set: .sp @@ -503,28 +492,28 @@ Define how to handle links having target=_blank set: .RE .RE .PP -document.browse.links.use_tabindex \fB[0|1]\fR (default: 1) +document\&.browse\&.links\&.use_tabindex \fB[0|1]\fR (default: 1) .RS 4 -Whether to navigate links using tabindex specified ordering. The +Whether to navigate links using tabindex specified ordering\&. The TABINDEX -attribute in HTML elements specifies the order in which links should receive focus when using the keyboard to navigate the document. +attribute in HTML elements specifies the order in which links should receive focus when using the keyboard to navigate the document\&. .RE .PP -document.browse.links.missing_fragment \fB[0|1]\fR (default: 1) +document\&.browse\&.links\&.missing_fragment \fB[0|1]\fR (default: 1) .RS 4 -Open a message box when document has no tag with given id. +Open a message box when document has no tag with given id\&. .RE .PP -document.browse.links.number_keys_select_link \fB\fR (default: 1) +document\&.browse\&.links\&.number_keys_select_link \fB\fR (default: 1) .RS 4 -Number keys select links rather than specify command prefixes. This is a tristate: +Number keys select links rather than specify command prefixes\&. This is a tristate: .sp .RS 4 \h'-04'\(bu\h'+03'0 means never .RE .sp .RS 4 -\h'-04'\(bu\h'+03'1 means if document.browse.links.numbering = 1 +\h'-04'\(bu\h'+03'1 means if document\&.browse\&.links\&.numbering = 1 .RE .sp .RS 4 @@ -532,84 +521,80 @@ Number keys select links rather than specify command prefixes. This is a tristat .RE .RE .PP -document.browse.links.warn_malicious \fB[0|1]\fR (default: 1) +document\&.browse\&.links\&.warn_malicious \fB[0|1]\fR (default: 1) .RS 4 -When following a link the user ID part of the URI is checked and if a maliciously crafted URI is detected a warning dialog will ask before following the link. +When following a link the user ID part of the URI is checked and if a maliciously crafted URI is detected a warning dialog will ask before following the link\&. .RE .PP -document.browse.links.wraparound \fB[0|1]\fR (default: 0) +document\&.browse\&.links\&.wraparound \fB[0|1]\fR (default: 0) .RS 4 -When pressing 'down' on the last link, jump to the first one, and vice versa. +When pressing \'down\' on the last link, jump to the first one, and vice versa\&. .RE -.SS "document.browse.links.active_link (Active link)" -Options for the active link. -.sp +.SS "document\&.browse\&.links\&.active_link (Active link)" +Options for the active link\&. .PP -document.browse.links.active_link.enable_color \fB[0|1]\fR (default: 0) +document\&.browse\&.links\&.active_link\&.enable_color \fB[0|1]\fR (default: 0) .RS 4 -Enable use of the active link background and text color settings instead of the link colors from the document. +Enable use of the active link background and text color settings instead of the link colors from the document\&. .RE .PP -document.browse.links.active_link.bold \fB[0|1]\fR (default: 0) +document\&.browse\&.links\&.active_link\&.bold \fB[0|1]\fR (default: 0) .RS 4 -Make the active link text bold. +Make the active link text bold\&. .RE .PP -document.browse.links.active_link.invert \fB[0|1]\fR (default: 1) +document\&.browse\&.links\&.active_link\&.invert \fB[0|1]\fR (default: 1) .RS 4 -Invert the fore\- and background color so the link stands out. +Invert the fore\- and background color so the link stands out\&. .RE .PP -document.browse.links.active_link.underline \fB[0|1]\fR (default: 0) +document\&.browse\&.links\&.active_link\&.underline \fB[0|1]\fR (default: 0) .RS 4 -Underline the active link. +Underline the active link\&. .RE -.SS "document.browse.links.active_link.colors (Colors)" -Active link colors. -.sp +.SS "document\&.browse\&.links\&.active_link\&.colors (Colors)" +Active link colors\&. .PP -document.browse.links.active_link.colors.background \fB\fR (default: blue) +document\&.browse\&.links\&.active_link\&.colors\&.background \fB\fR (default: blue) .RS 4 -Default background color. +Default background color\&. .RE .PP -document.browse.links.active_link.colors.text \fB\fR (default: black) +document\&.browse\&.links\&.active_link\&.colors\&.text \fB\fR (default: black) .RS 4 -Default text color. +Default text color\&. .RE -.SS "document.browse.scrolling (Scrolling)" -Scrolling options. -.sp +.SS "document\&.browse\&.scrolling (Scrolling)" +Scrolling options\&. .PP -document.browse.scrolling.horizontal_extended \fB[0|1]\fR (default: 1) +document\&.browse\&.scrolling\&.horizontal_extended \fB[0|1]\fR (default: 1) .RS 4 -Whether to allow horizontal scrolling when the document does not extend off the screen. Useful for copy/paste operations. +Whether to allow horizontal scrolling when the document does not extend off the screen\&. Useful for copy/paste operations\&. .RE .PP -document.browse.scrolling.horizontal_step \fB\fR (default: 8) +document\&.browse\&.scrolling\&.horizontal_step \fB\fR (default: 8) .RS 4 -Number of columns to scroll when a key bound to scroll\-left or scroll\- right is pressed and no prefix was given. +Number of columns to scroll when a key bound to scroll\-left or scroll\- right is pressed and no prefix was given\&. .RE .PP -document.browse.scrolling.margin \fB\fR (default: 3) +document\&.browse\&.scrolling\&.margin \fB\fR (default: 3) .RS 4 -Size of the virtual margin \(en when you click inside of that margin, document scrolls in that direction. +Size of the virtual margin \(en when you click inside of that margin, document scrolls in that direction\&. .RE .PP -document.browse.scrolling.vertical_step \fB\fR (default: 2) +document\&.browse\&.scrolling\&.vertical_step \fB\fR (default: 2) .RS 4 -Number of lines to scroll when a key bound to scroll\-up or scroll\- down is pressed and no prefix was given. +Number of lines to scroll when a key bound to scroll\-up or scroll\- down is pressed and no prefix was given\&. .RE -.SS "document.browse.search (Searching)" -Options for searching. -.sp +.SS "document\&.browse\&.search (Searching)" +Options for searching\&. .PP -document.browse.search.case \fB[0|1]\fR (default: 0) +document\&.browse\&.search\&.case \fB[0|1]\fR (default: 0) .RS 4 -Whether the search should match the document text while maintaining case sensitivity. +Whether the search should match the document text while maintaining case sensitivity\&. .RE .PP -document.browse.search.regex \fB\fR (default: 0) +document\&.browse\&.search\&.regex \fB\fR (default: 0) .RS 4 Enable searching with regular expressions: .sp @@ -626,17 +611,17 @@ Enable searching with regular expressions: .RE .RE .PP -document.browse.search.show_hit_top_bottom \fB[0|1]\fR (default: 1) +document\&.browse\&.search\&.show_hit_top_bottom \fB[0|1]\fR (default: 1) .RS 4 -Whether to show a dialog when the search hits the top or bottom of the document. +Whether to show a dialog when the search hits the top or bottom of the document\&. .RE .PP -document.browse.search.wraparound \fB[0|1]\fR (default: 1) +document\&.browse\&.search\&.wraparound \fB[0|1]\fR (default: 1) .RS 4 -Wrap around when searching. Currently only used for typeahead. +Wrap around when searching\&. Currently only used for typeahead\&. .RE .PP -document.browse.search.show_not_found \fB\fR (default: 2) +document\&.browse\&.search\&.show_not_found \fB\fR (default: 2) .RS 4 How to inform the user when nothing is matched: .sp @@ -653,9 +638,9 @@ How to inform the user when nothing is matched: .RE .RE .PP -document.browse.search.typeahead \fB\fR (default: 0) +document\&.browse\&.search\&.typeahead \fB\fR (default: 0) .RS 4 -Start typeahead searching when an unbound key is pressed without any modifiers. Note that most keys have default bindings, so this feature will not be useful unless you unbind them. +Start typeahead searching when an unbound key is pressed without any modifiers\&. Note that most keys have default bindings, so this feature will not be useful unless you unbind them\&. .sp .RS 4 \h'-04'\(bu\h'+03'0 disables this feature; typeahead searching will only be used when you press a key bound to search\-typeahead or similar @@ -669,109 +654,104 @@ Start typeahead searching when an unbound key is pressed without any modifiers. \h'-04'\(bu\h'+03'2 automatically starts typeahead searching thru all document text .RE .RE -.SS "document.cache (Cache)" -Cache options. -.sp +.SS "document\&.cache (Cache)" +Cache options\&. .PP -document.cache.cache_redirects \fB[0|1]\fR (default: 0) +document\&.cache\&.cache_redirects \fB[0|1]\fR (default: 0) .RS 4 -Cache even redirects sent by server (usually thru HTTP by a 302 HTTP code and a Location header). This was the original behaviour for quite some time, but it causes problems in a situation very common to various web login systems \(en frequently, when accessing a certain location, they will redirect you to a login page if they don't receive an auth cookie, the login page then gives you the cookie and redirects you back to the original page, but there you have already cached redirect back to the login page! If this option has value of 0, this malfunction is fixed, but occasionally you may get superfluous (depends on how you take it ;\-) requests to the server. If this option has value of 1, experienced users can still workaround it by clever combination of usage of reload, jumping around in session history and hitting ctrl+enter. Note that this option is checked when retrieving the information from cache, not when saving it to cache \(en thus if you enable it, even previous redirects will be taken from cache instead of asking the server. +Cache even redirects sent by server (usually thru HTTP by a 302 HTTP code and a Location header)\&. This was the original behaviour for quite some time, but it causes problems in a situation very common to various web login systems \(en frequently, when accessing a certain location, they will redirect you to a login page if they don\'t receive an auth cookie, the login page then gives you the cookie and redirects you back to the original page, but there you have already cached redirect back to the login page! If this option has value of 0, this malfunction is fixed, but occasionally you may get superfluous (depends on how you take it ;\-) requests to the server\&. If this option has value of 1, experienced users can still workaround it by clever combination of usage of reload, jumping around in session history and hitting ctrl+enter\&. Note that this option is checked when retrieving the information from cache, not when saving it to cache \(en thus if you enable it, even previous redirects will be taken from cache instead of asking the server\&. .RE .PP -document.cache.ignore_cache_control \fB[0|1]\fR (default: 1) +document\&.cache\&.ignore_cache_control \fB[0|1]\fR (default: 1) .RS 4 -Ignore Cache\-Control and Pragma server headers. When set, the document is cached even with 'Cache\-Control: no\-cache'. +Ignore Cache\-Control and Pragma server headers\&. When set, the document is cached even with \'Cache\-Control: no\-cache\'\&. .RE .PP -document.cache.revalidation_interval \fB\fR (default: \-1) +document\&.cache\&.revalidation_interval \fB\fR (default: \-1) .RS 4 -Period in seconds that a cache entry is considered to be up\-to\-date. When a document is loaded and this interval has elapsed since the document was initially loaded or most recently revalidated with the server, the server will be checked in case there is a more up\-to\-date version of the document. +Period in seconds that a cache entry is considered to be up\-to\-date\&. When a document is loaded and this interval has elapsed since the document was initially loaded or most recently revalidated with the server, the server will be checked in case there is a more up\-to\-date version of the document\&. .sp -A value of \-1 disables automatic revalidation. +A value of \-1 disables automatic revalidation\&. .RE -.SS "document.cache.format (Formatted documents)" -Format cache options. -.sp +.SS "document\&.cache\&.format (Formatted documents)" +Format cache options\&. .PP -document.cache.format.size \fB\fR (default: 5) +document\&.cache\&.format\&.size \fB\fR (default: 5) .RS 4 -Number of cached formatted pages. Do not get too generous here, 'formatted' means that all the accompanying structures are kept in memory so that you get the cached document immediatelly, but these structures may take a lot \(en 2x the size of the HTML source is probably not unusual, but it can be even more if the document consists of a lot of short lines (padded right, if possible) and links and not much other markup. So if you set this to 256 and then you don't like your +Number of cached formatted pages\&. Do not get too generous here, \'formatted\' means that all the accompanying structures are kept in memory so that you get the cached document immediatelly, but these structures may take a lot \(en 2x the size of the HTML source is probably not unusual, but it can be even more if the document consists of a lot of short lines (padded right, if possible) and links and not much other markup\&. So if you set this to 256 and then you don\'t like your ELinks -eating 90M, don't come complaining to us. ;\-) Also note that the format cache itself is not counted to the memory cache size, but the HTML source of the formatted documents is always cached, even if it is over the memory cache size threshold. (Then of course no other documents can be cached.) +eating 90M, don\'t come complaining to us\&. ;\-) Also note that the format cache itself is not counted to the memory cache size, but the HTML source of the formatted documents is always cached, even if it is over the memory cache size threshold\&. (Then of course no other documents can be cached\&.) .RE -.SS "document.cache.memory (Memory cache)" -Memory cache options. -.sp +.SS "document\&.cache\&.memory (Memory cache)" +Memory cache options\&. .PP -document.cache.memory.size \fB\fR (default: 1048576) +document\&.cache\&.memory\&.size \fB\fR (default: 1048576) .RS 4 -Memory cache size (in bytes). +Memory cache size (in bytes)\&. .RE -.SS "document.codepage (Charset)" -Charset options. -.sp +.SS "document\&.codepage (Charset)" +Charset options\&. .PP -document.codepage.assume \fB\fR (default: System) +document\&.codepage\&.assume \fB\fR (default: System) .RS 4 -Default document codepage. 'System' stands for a codepage determined by a selected locale. +Default document codepage\&. \'System\' stands for a codepage determined by a selected locale\&. .RE .PP -document.codepage.force_assumed \fB[0|1]\fR (default: 0) +document\&.codepage\&.force_assumed \fB[0|1]\fR (default: 0) .RS 4 -Ignore charset info sent by server. +Ignore charset info sent by server\&. .RE -.SS "document.colors (Default color settings)" -Default document color settings. -.sp +.SS "document\&.colors (Default color settings)" +Default document color settings\&. .PP -document.colors.text \fB\fR (default: gray75) +document\&.colors\&.text \fB\fR (default: gray75) .RS 4 -Default text color. +Default text color\&. .RE .PP -document.colors.background \fB\fR (default: black) +document\&.colors\&.background \fB\fR (default: black) .RS 4 -Default background color. +Default background color\&. .RE .PP -document.colors.link \fB\fR (default: blue) +document\&.colors\&.link \fB\fR (default: blue) .RS 4 -Default link color. +Default link color\&. .RE .PP -document.colors.vlink \fB\fR (default: yellow) +document\&.colors\&.vlink \fB\fR (default: yellow) .RS 4 -Default visited link color. +Default visited link color\&. .RE .PP -document.colors.image \fB\fR (default: darkolivegreen) +document\&.colors\&.image \fB\fR (default: darkolivegreen) .RS 4 -Default image link color. +Default image link color\&. .RE .PP -document.colors.bookmark \fB\fR (default: hotpink) +document\&.colors\&.bookmark \fB\fR (default: hotpink) .RS 4 -Default bookmarked link color. +Default bookmarked link color\&. .RE .PP -document.colors.dirs \fB\fR (default: yellow) +document\&.colors\&.dirs \fB\fR (default: yellow) .RS 4 -Default directory color. See -document.browse.links.color_dirs -option. +Default directory color\&. See +document\&.browse\&.links\&.color_dirs +option\&. .RE .PP -document.colors.increase_contrast \fB[0|1]\fR (default: 1) +document\&.colors\&.increase_contrast \fB[0|1]\fR (default: 1) .RS 4 -Increase the contrast between the foreground and background colors to ensure readability. For example it disallows dark colors on a black background. Note, this is different from ensuring the contrast with the ensure_contrast option. +Increase the contrast between the foreground and background colors to ensure readability\&. For example it disallows dark colors on a black background\&. Note, this is different from ensuring the contrast with the ensure_contrast option\&. .RE .PP -document.colors.ensure_contrast \fB[0|1]\fR (default: 1) +document\&.colors\&.ensure_contrast \fB[0|1]\fR (default: 1) .RS 4 -Makes sure that the back\- and foreground colors are never equal. +Makes sure that the back\- and foreground colors are never equal\&. .RE .PP -document.colors.use_document_colors \fB\fR (default: 2) +document\&.colors\&.use_document_colors \fB\fR (default: 2) .RS 4 Use colors specified in document: .sp @@ -784,43 +764,41 @@ Use colors specified in document: .RE .sp .RS 4 -\h'-04'\(bu\h'+03'2 is use document colors, including background. This can mostly look very impressive, but some sites will appear really ugly. Note, that obviously if the background is not black, it will break the behaviour of transparency. +\h'-04'\(bu\h'+03'2 is use document colors, including background\&. This can mostly look very impressive, but some sites will appear really ugly\&. Note, that obviously if the background is not black, it will break the behaviour of transparency\&. .RE .RE -.SS "document.css (Cascading Style Sheets)" -Options concerning how to use CSS for styling documents. -.sp +.SS "document\&.css (Cascading Style Sheets)" +Options concerning how to use CSS for styling documents\&. .PP -document.css.enable \fB[0|1]\fR (default: 1) +document\&.css\&.enable \fB[0|1]\fR (default: 1) .RS 4 -Enable adding of CSS style info to documents. +Enable adding of CSS style info to documents\&. .RE .PP -document.css.import \fB[0|1]\fR (default: 1) +document\&.css\&.import \fB[0|1]\fR (default: 1) .RS 4 -When enabled any external style sheets that are imported from either CSS itself using the @import keyword or from the HTML using tags in the document header will also be downloaded. +When enabled any external style sheets that are imported from either CSS itself using the @import keyword or from the HTML using tags in the document header will also be downloaded\&. .RE .PP -document.css.stylesheet \fB\fR (default: "") +document\&.css\&.stylesheet \fB\fR (default: "") .RS 4 -The path to the file containing the default user defined Cascading Style Sheet. It can be used to control the basic layout of HTML documents. The path is assumed to be relative to -ELinks' home directory. Leave as "" to use built\-in document styling. +The path to the file containing the default user defined Cascading Style Sheet\&. It can be used to control the basic layout of HTML documents\&. The path is assumed to be relative to +ELinks\' home directory\&. Leave as "" to use built\-in document styling\&. .RE -.SS "document.download (Downloading)" -Options regarding files downloading and handling. -.sp +.SS "document\&.download (Downloading)" +Options regarding files downloading and handling\&. .PP -document.download.directory \fB\fR (default: "./") +document\&.download\&.directory \fB\fR (default: "\&./") .RS 4 -Default download directory. +Default download directory\&. .RE .PP -document.download.set_original_time \fB[0|1]\fR (default: 0) +document\&.download\&.set_original_time \fB[0|1]\fR (default: 0) .RS 4 -Set the timestamp of each downloaded file to the timestamp stored on the server. +Set the timestamp of each downloaded file to the timestamp stored on the server\&. .RE .PP -document.download.overwrite \fB\fR (default: 2) +document\&.download\&.overwrite \fB\fR (default: 2) .RS 4 Prevent overwriting the local files: .sp @@ -829,7 +807,7 @@ Prevent overwriting the local files: .RE .sp .RS 4 -\h'-04'\(bu\h'+03'1 is add a suffix .{number} (for example '.1') to the name +\h'-04'\(bu\h'+03'1 is add a suffix \&.{number} (for example \'\&.1\') to the name .RE .sp .RS 4 @@ -837,7 +815,7 @@ Prevent overwriting the local files: .RE .RE .PP -document.download.notify_bell \fB\fR (default: 0) +document\&.download\&.notify_bell \fB\fR (default: 0) .RS 4 Audio notification when download is completed: .sp @@ -853,22 +831,21 @@ Audio notification when download is completed: \h'-04'\(bu\h'+03'2 is always .RE .RE -.SS "document.dump (Dump output)" -Dump output options. -.sp +.SS "document\&.dump (Dump output)" +Dump output options\&. .PP -document.dump.codepage \fB\fR (default: System) +document\&.dump\&.codepage \fB\fR (default: System) .RS 4 -Codepage used in dump output. 'System' stands for a codepage determined by a selected locale. +Codepage used in dump output\&. \'System\' stands for a codepage determined by a selected locale\&. .RE .PP -document.dump.color_mode \fB\fR (default: \-1) +document\&.dump\&.color_mode \fB\fR (default: \-1) .RS 4 -Color mode for dumps. Some modes may have been disabled at compile time. The +Color mode for dumps\&. Some modes may have been disabled at compile time\&. The Setup \(-> Terminal options -dialog lists the modes supported by this executable. If you select an unsupported mode, +dialog lists the modes supported by this executable\&. If you select an unsupported mode, ELinks -uses 16 colors. The color modes are: +uses 16 colors\&. The color modes are: .sp .RS 4 \h'-04'\(bu\h'+03'\-1 is standard dump mode @@ -895,58 +872,56 @@ uses 16 colors. The color modes are: .RE .RE .PP -document.dump.footer \fB\fR (default: "") +document\&.dump\&.footer \fB\fR (default: "") .RS 4 -Footer string used in dumps. %u is substituted by URL. +Footer string used in dumps\&. %u is substituted by URL\&. .RE .PP -document.dump.header \fB\fR (default: "") +document\&.dump\&.header \fB\fR (default: "") .RS 4 -Header string used in dumps. %u is substituted by URL. +Header string used in dumps\&. %u is substituted by URL\&. .RE .PP -document.dump.numbering \fB[0|1]\fR (default: 1) +document\&.dump\&.numbering \fB[0|1]\fR (default: 1) .RS 4 -Whether to print link numbers in dump output. +Whether to print link numbers in dump output\&. .RE .PP -document.dump.references \fB[0|1]\fR (default: 1) +document\&.dump\&.references \fB[0|1]\fR (default: 1) .RS 4 -Whether to print references (URIs) of document links in dump output. +Whether to print references (URIs) of document links in dump output\&. .RE .PP -document.dump.separator \fB\fR (default: " ") +document\&.dump\&.separator \fB\fR (default: " ") .RS 4 -String which separates two dumps. +String which separates two dumps\&. .RE .PP -document.dump.width \fB\fR (default: 80) +document\&.dump\&.width \fB\fR (default: 80) .RS 4 -Width of screen in characters when dumping documents. +Width of screen in characters when dumping documents\&. .RE -.SS "document.history (History)" -History options. -.sp +.SS "document\&.history (History)" +History options\&. .PP -document.history.keep_unhistory \fB[0|1]\fR (default: 1) +document\&.history\&.keep_unhistory \fB[0|1]\fR (default: 1) .RS 4 -Keep unhistory ("forward history"). +Keep unhistory ("forward history")\&. .RE -.SS "document.history.global (Global history)" -Global history options. -.sp +.SS "document\&.history\&.global (Global history)" +Global history options\&. .PP -document.history.global.enable \fB[0|1]\fR (default: 1) +document\&.history\&.global\&.enable \fB[0|1]\fR (default: 1) .RS 4 -Enable global history ("history of all pages visited"). +Enable global history ("history of all pages visited")\&. .RE .PP -document.history.global.max_items \fB\fR (default: 1024) +document\&.history\&.global\&.max_items \fB\fR (default: 1024) .RS 4 -Maximum number of entries in the global history. +Maximum number of entries in the global history\&. .RE .PP -document.history.global.display_type \fB\fR (default: 0) +document\&.history\&.global\&.display_type \fB\fR (default: 0) .RS 4 What to display in global history dialog: .sp @@ -958,31 +933,30 @@ What to display in global history dialog: \h'-04'\(bu\h'+03'1 is page titles .RE .RE -.SS "document.html (HTML rendering)" -Options concerning the display of HTML pages. -.sp +.SS "document\&.html (HTML rendering)" +Options concerning the display of HTML pages\&. .PP -document.html.display_frames \fB[0|1]\fR (default: 1) +document\&.html\&.display_frames \fB[0|1]\fR (default: 1) .RS 4 -Display frames. +Display frames\&. .RE .PP -document.html.display_tables \fB[0|1]\fR (default: 1) +document\&.html\&.display_tables \fB[0|1]\fR (default: 1) .RS 4 -Display tables. +Display tables\&. .RE .PP -document.html.display_subs \fB[0|1]\fR (default: 1) +document\&.html\&.display_subs \fB[0|1]\fR (default: 1) .RS 4 -Display subscripts (as [thing]). +Display subscripts (as [thing])\&. .RE .PP -document.html.display_sups \fB[0|1]\fR (default: 1) +document\&.html\&.display_sups \fB[0|1]\fR (default: 1) .RS 4 -Display superscripts (as ^thing). +Display superscripts (as ^thing)\&. .RE .PP -document.html.link_display \fB\fR (default: 2) +document\&.html\&.link_display \fB\fR (default: 2) .RS 4 How to render tags from the HTML header: .sp @@ -1011,163 +985,155 @@ How to render tags from the HTML header: .RE .RE .PP -document.html.underline_links \fB[0|1]\fR (default: 0) +document\&.html\&.underline_links \fB[0|1]\fR (default: 0) .RS 4 -Underline links. +Underline links\&. .RE .PP -document.html.wrap_nbsp \fB[0|1]\fR (default: 0) +document\&.html\&.wrap_nbsp \fB[0|1]\fR (default: 0) .RS 4 -If set do not honour non breaking space (the nbsp entity) but allow to wrap the text. This can help keeping the width of documents down so no horizontal scrolling is needed. +If set do not honour non breaking space (the nbsp entity) but allow to wrap the text\&. This can help keeping the width of documents down so no horizontal scrolling is needed\&. .RE -.SS "document.plain (Plain rendering)" -Options concerning the display of plain text pages. -.sp +.SS "document\&.plain (Plain rendering)" +Options concerning the display of plain text pages\&. .PP -document.plain.display_links \fB[0|1]\fR (default: 0) +document\&.plain\&.display_links \fB[0|1]\fR (default: 0) .RS 4 -Display URIs in the document as links. +Display URIs in the document as links\&. .RE .PP -document.plain.compress_empty_lines \fB[0|1]\fR (default: 0) +document\&.plain\&.compress_empty_lines \fB[0|1]\fR (default: 0) .RS 4 -Compress successive empty lines to only one in displayed text. +Compress successive empty lines to only one in displayed text\&. .RE -.SS "document.uri_passing (URI passing)" -Rules for passing URIs to external commands. When one rule is defined the link and tab menu will have a menu item that makes it possible to pass the the link, frame or tab URI to an external command. If several rules are defined the link and tab menu will have a submenu of items for each rule. Note, this is mostly useful for launching graphical viewers, since there is no support for releasing the terminal while the command runs. The action and submenus are also available by binding keys to the frame\-external\-command, the link\-external\-command, and the tab\-external\-command actions. -.sp +.SS "document\&.uri_passing (URI passing)" +Rules for passing URIs to external commands\&. When one rule is defined the link and tab menu will have a menu item that makes it possible to pass the the link, frame or tab URI to an external command\&. If several rules are defined the link and tab menu will have a submenu of items for each rule\&. Note, this is mostly useful for launching graphical viewers, since there is no support for releasing the terminal while the command runs\&. The action and submenus are also available by binding keys to the frame\-external\-command, the link\-external\-command, and the tab\-external\-command actions\&. .PP -document.uri_passing._template_ \fB\fR (default: "") +document\&.uri_passing\&._template_ \fB\fR (default: "") .RS 4 -A rule for passing URI to an external command. The format is: +A rule for passing URI to an external command\&. The format is: .sp .RS 4 \h'-04'\(bu\h'+03'%c in the string means the current URL .RE .sp .RS 4 -\h'-04'\(bu\h'+03'%% in the string means '%' +\h'-04'\(bu\h'+03'%% in the string means \'%\' .RE .IP "" 4 Do \fBnot\fR -put single\- or double\-quotes around %c. +put single\- or double\-quotes around %c\&. .RE .SS "ecmascript (ECMAScript)" -ECMAScript options. -.sp +ECMAScript options\&. .PP -ecmascript.enable \fB[0|1]\fR (default: 0) +ecmascript\&.enable \fB[0|1]\fR (default: 0) .RS 4 -Whether to run those scripts inside of documents. +Whether to run those scripts inside of documents\&. .RE .PP -ecmascript.error_reporting \fB[0|1]\fR (default: 0) +ecmascript\&.error_reporting \fB[0|1]\fR (default: 0) .RS 4 -Open a message box when a script reports an error. +Open a message box when a script reports an error\&. .RE .PP -ecmascript.ignore_noscript \fB[0|1]\fR (default: 0) +ecmascript\&.ignore_noscript \fB[0|1]\fR (default: 0) .RS 4 -Whether to ignore content enclosed by the