diff --git a/ChangeLog b/ChangeLog index 24f0d41f..132d6ef7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,9 +3,17 @@ by doing $ cg log -in a checked out GIT tree, or using the gitweb interface currently -available at +in a checked out GIT tree, or using the gitweb interface available at: - http://pasky.or.cz/gitweb.cgi + http://repo.or.cz/w/elinks.git -(to be moved to a nicer location later). +The data in the main repository reaches back to 2005-09-16, when +ELinks switched from CVS to GIT. To see changes made in CVS before +that, download the history with the contrib/grafthistory.sh script. +Unfortunately, because files in the CVS repository have been moved or +copied around, checking out a historical version often places files in +the wrong directories. The history is usable for git-blame, however. +It is currently also viewable at these sites: + + http://pasky.or.cz/gitweb.cgi?p=elinks-history.git + http://cvsweb.elinks.cz/cvsweb.cgi/elinks/ diff --git a/Makefile.config.in b/Makefile.config.in index b6802b17..2426ddf8 100644 --- a/Makefile.config.in +++ b/Makefile.config.in @@ -182,6 +182,10 @@ MAKE_COLOR = @MAKE_COLOR@ LIB_O_NAME = lib.o +# Reverse a CONFIG_* string +# Usage $(call not,$(CONFIG_FOO)) +not = $(if $(findstring yes,$(1)),no,yes) + ### This is here because Makefile.config is usually the first thing ### we get and sometimes the all rule can be implicit, yet we want ### it always as the default one. So this should make sure it always diff --git a/Makefile.lib b/Makefile.lib index 3dd69384..96c85185 100644 --- a/Makefile.lib +++ b/Makefile.lib @@ -191,6 +191,21 @@ test-default: ifdef TEST_PROGS TESTDEPS-$(CONFIG_DEBUG) += $(top_builddir)/src/util/memdebug.o +TESTDEPS-$(call not,$(CONFIG_SMALL)) += \ + $(top_builddir)/src/util/fastfind.o \ + +# Add most of the basic utility library to the test dependencies. +TESTDEPS += \ + $(top_builddir)/src/intl/charsets.o \ + $(top_builddir)/src/osdep/stub.o \ + $(top_builddir)/src/util/conv.o \ + $(top_builddir)/src/util/error.o \ + $(top_builddir)/src/util/file.o \ + $(top_builddir)/src/util/hash.o \ + $(top_builddir)/src/util/memory.o \ + $(top_builddir)/src/util/string.o \ + $(top_builddir)/src/util/time.o + TESTDEPS += $(TESTDEPS-yes) TEST_LIB=$(top_srcdir)/test/libtest.sh diff --git a/NEWS b/NEWS index 5369125b..e917f75c 100644 --- a/NEWS +++ b/NEWS @@ -1,8 +1,8 @@ Release info ============ -You can see the complete list of recent changes, bugfixes and new features in -the link:http://pasky.or.cz/gitweb.cgi[gitweb interface]. See the ChangeLog +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.13.GIT now: @@ -17,192 +17,160 @@ To be released as ELinks 0.12.0. ////////////////////////////////////////////////////////////////////// This list now contains all the important changes from ELinks 0.11.0 to -ELinks 0.12.GIT (049cc9c6b37951a739dfd6b20ca92c170188824c). The next -step will be to scan through Bugzilla and look for bug numbers that -were not mentioned in related commit messages. +ELinks 0.12.GIT (0cf15ca9d9dbc00c10f23440674fcdb832dffd75) and related +bug numbers. Each section is sorted by severity and grouped by topic. The list no doubt includes several changes that are not really important enough. Please move them to the separate "should be removed from NEWS" list below, or coalesce several changes into one entry (but -do list all bug numbers). It might be a good idea to sort the entries -roughly in decreasing order of importance. +do list all bug numbers). ////////////////////////////////////////////////////////////////////// -* Notable new features - - (unfinished enhancement 822) UTF-8 as terminal charset: not - merely UTF-8 I/O of a unibyte codepage as in previous versions. - Double-cell (aka fullwidth) and non-BMP characters work too, but - combining characters and right-to-left text do not. The only - multibyte charset ELinks can decode is still UTF-8, so if the - server outputs e.g. Shift-JIS, you'd better recode with a proxy. - - (enhancement 844) SMB protocol using libsmbclient. This replaces - the smbclient-based code that was disabled in ELinks 0.11.2. -* Incompatibilities - - ECMAScript support is now disabled by default. It has known - bugs (548, 755, 771) with which malicious web pages can crash or - hang ELinks, and its security goals are undocumented. If you must - enable ECMAScript support, it would be prudent to restrict the - ELinks process with a sandbox of some kind. - - (bug 871) The numbering of terminal.*.colors no longer depends on - config options. This change makes elinks.conf portable between - different configurations but unfortunately not between this and - previous versions. - - Changed Python goto_url_hook(current) to goto_url_hook(new). The - hook can call the new function elinks.current_url() if desired. - The Python scripting back-end is much more featureful than in - previous releases, but it is still considered experimental. -* Miscellaneous - - (enhancement 752) Documentation updates - - (enhancement 381) Reduce memory consumption of codepages and some - other arrays. - - (enhancement) Reject invalid UTF-8 input from documents and - terminals. -* Changes in terminal support - - (enhancement) Mouse wheel support on BSD via moused -z 4 - - (enhancement) Support for mouse wheel over GPM - - (bugfix 724) Better parsing of escape sequences and control - sequences from the terminal. - - (bugfix) Decode UTF-8 only from bytes, not from codes of special - keys. - - (new feature) 24-bit truecolor mode - - (enhancement) "Resize terminal" tries to use the window size - increment. - - (new feature) Support Ctrl+Alt+letter key combinations. - - (bugfix) Subprocess forked for SIGTSTP calls _exit, not exit. - - (enhancement) Turn terminal transparency off by default. -* Changes in cookies and bookmarks - - (new feature) "Add server" button in the cookie manager. - - (enhancement) Tell the user how to move bookmarks. - - (enhancement 887) Save in cookie manager should save cookies even - if unmodified. -* Changes in the user interface - - (new feature 145) Internal clipboard support - - (enhancement) Localization updates - - (bugfix 355) Add documents displayed via "What to do" dialog to - globhist - - (new feature) Autocreate directories needed to download a file. - - (new feature) Option ui.show_menu_bar_always - - (new feature) Option ui.tabs moves the tab bar to the top. - - (new feature) New actions: kill-word-back, move-backward-word, - move-forward-word - - (enhancement) Ctrl+characters don't trigger hotkeys in menus and - dialogs. - - (bugfix 396) Never show empty filename in the what-to-do dialog - - (bugfix 930) Refresh status bar when key prefix is eaten. -* Changes in support for URI schemes, protocols, caching, and encodings - - (bugfix) Fixes cache-control issue. See elinks-users mail from 28 Oct 2005 - - (new feature) LZMA decompression - - (bugfix 517) Fixed and enabled HTTP bzip2 decompression - - (new feature) HTTP negotiate-auth using GSSAPI - - (bugfix 770) Download resuming simply restarts the download - - (bugfix 691) Fix IPv4 DNS lookup bug - - (enhancement 790) If-Modified-Since and If-None-Match - - (bugfix) gzip_read: always call gzclearerr - - (bugfix 107) Recognize "localhost" in file: URIs. - - (bugfix 756) "assertion (cached)->object.refcount >= 0 failed" - after HTTP proxy was changed - - (bugfix) Encode and decode filenames in FSP URLs. - - (enhancement) FSP progress indicator and password prompt. - - (bugfix) Support much longer locale-specific timestamps when - formatting a directory listing. LC_TIME=fi_FI.UTF-8 now works. - - (bugfix 712) GnuTLS works on https://www-s.uiuc.edu -* Changes in parsing and rendering of HTML (without DOM) - - (bugfix) Use frame->name instead of target avoiding possible segfault. - - (bugfix 284) Render closing parentheses for HTML elements SUB, SUP - in the same line; don't let them fall to the next. - - (enhancement) Show quote characters for HTML element Q, rather - than italics. - - (enhancement) Add support for parsing space separated CSS class - attribute values - - (bugfix 387) Treat inside
...
as a newline. -* Changes in parsing and rendering of non-HTML content-types - - (new feature 121) If a mailcap entry indicates copiousoutput, - ELinks itself acts as a pager. - - (new feature 916) If a mailcap entry has no %s, provide the file - as stdin. -* Changes in the document viewer and tabs - - (new feature) Highlight links as one enters link prefixes. - - (new feature) Backspace backs out the last digit of the prefix. - - (bugfix) Tabs opened by -remote now go behind existing dialogs. - - (new feature 622) -dump-color-mode - - (bugfix) Fix accesskeys so that they work when priority is 0 - - (enhancement) Text type-ahead searching: don't follow current link - on enter - - (bugfix) Take the terminal charset in account when comparing - accesskeys. - - (enhancement) Display accesskeys as e.g. (Alt-f), not just (f). -* Changes in user scripting - - (enhancement) Guile: Read hooks.scm rather than internal-hooks.scm. - (Keep reading user-hooks.scm, too.) - - (bugfix) Lua: Don't write to the string returned by lua_tostring. - - (bugfix 945) Lua: Don't crash if a script calls e.g. error(nil). - - (enhancement) SMJS: elinks.alert no longer displays as an "error". - - (new feature) SMJS: New properties elinks.action, elinks.globhist, - elinks.vs. - - (new feature) SMJS: New function elinks.load_uri. - - (new feature) SMJS: New method elinks.execute. - - (enhancement) SMJS: Garbage-collect SMJS objects before flushing - caches. - - (bitrot) Perl: Don't assume POPpx stores the length to n_a. - - (bugfix) Perl: Fix pre_format_html hook wrt. binary files. -* Build system and compile-time errors (ignore if you don't build ELinks) - - (bugfix) Fixed some bugs about compiling outside the source - directory. - - (bugfix) Don't use cmp -b, which FreeBSD doesn't support. - - (bugfix) Don't include for MIN and MAX because it - may interfere with CONFIG_IPV6 on Linux. - - (bugfix) When the configure script cleans old object files, this - no longer causes it to loop. - - (experimental, new feature) --with-python=DIRECTORY, --with-gc=DIRECTORY - - (bugfix) Include and fix compilation on an old - PPC/Debian system - - (bitrot) Fix compilation under gcc 4.x. Backported from gentoo portage. - Also, reduce warnings on gcc 4.2 snapshots. - - (bitrot) Update SpiderMonkey configure check Debian compatibility - - (new feature 779) make uninstall - - (experimental, new feature) Native Win32 port - - (enhancement) If make -k was used and a sub-Make fails, build the - rest before propagating. - - (enhancement) Avoid compilation of vernum.c in 'make install' - - (bugfix) Don't use $(AM_CFLAGS) anymore. Use $(CPPFLAGS) instead. - - (bitrot) Fix two warnings on Mac OS X. -* (experimental) Changes in ECMAScript support - - (new feature) SEE ECMAScript backend, an alternative to SpiderMonkey. - - (new feature) Handling onsubmit - - (workaround) window.open remembers the last few URLs and doesn't - reopen them when incremental rendering reruns the onload script. - - (enhancement) Recognize document.location.href for SMJS. - - (enhancement) Better handling of form.action assignments - - (enhancement) form[x] looks up controls also by id, not only name. - - (new feature) New property input.selectedIndex. - - (new feature) Activate link only when onClick returns true. - - (enhancement) input.accessKey can be any Unicode character except - U+0000. - - (new feature) window.setTimeout, window.status -* (experimental) Changes in SGML/DOM implementation - - (new feature) Minimalistic RSS renderer - - (enhancement) Source highlighting also recognizes - application/xhtml+xml and application/docbook+xml. It doesn't yet - support arbitrary XML though. - - (enhancement) Make it possible to use more CSS properties with the - source highlighting - - (enhancement) Handle for HTML source rendering - - (enhancement) Add support for scanning comment endings such as - '--!>' correctly - - (new feature) Incremental parsing - - And more. +Notable new features: + +* enhancement 822: UTF-8 as terminal charset, not merely UTF-8 I/O + of a unibyte codepage as in previous versions. Double-cell (aka + fullwidth) and supplementary characters work too, but combining + characters and right-to-left text do not. The only multibyte + charset ELinks can decode is still UTF-8, so if the server outputs + e.g. Shift-JIS, you'd better recode with a proxy. See more notes + in features.conf. +* enhancement 844: SMB protocol using libsmbclient. This replaces + the smbclient-based code that was disabled in ELinks 0.11.2. + +Incompatibilities: + +* ECMAScript support is now disabled by default. It has known + bugs 548 and 771 with which malicious web pages can hang ELinks, + and its security goals are undocumented. If you must enable + ECMAScript support, it would be prudent to restrict the ELinks + process with a sandbox of some kind. +* ECMAScript support no longer works with SpiderMonkey versions + earlier than JS1.5 RC3a. +* Gzip decompression support now requires zlib 1.2.0.2 or later. +* bugs 871, 752: The numbering of terminal.*.colors no longer depends + on config options. This change makes elinks.conf portable between + different configurations but unfortunately not between this and + previous versions. +* Changed Python goto_url_hook(current) to goto_url_hook(new). The + hook can call the new function elinks.current_url() if desired. + The Python scripting back-end is much more featureful than in + previous releases, but it is still considered experimental. +* Guile scripting reads hooks.scm rather than internal-hooks.scm. + (It still reads user-hooks.scm, too.) + +Miscellaneous: + +* critical bug 756: ``assertion (cached)->object.refcount >= 0 failed'' + after HTTP proxy was changed +* tabs opened by -remote now go behind existing dialogs +* Debian bug 257762: turn terminal transparency off by default +* bug 724: better parsing of escape sequences and control + sequences from the terminal +* bug 948: fix wrong UTF-8 output after the charset menu was used +* gzip_read: always call gzclearerr +* bug 816: convert entity references in input/@value only once +* bug 916: if a mailcap entry has no %s, provide the file as stdin +* bug 355: add documents displayed via ``What to do'' dialog to the + global history +* encode and decode filenames in FSP URLs +* don't use a busy cache entry if it has expired or should be + reloaded. See elinks-users mail from 28 Oct 2005. +* several accesskey fixes +* in Lua: don't write to the string returned by lua_tostring +* minor bug 284: render closing bracket for HTML element SUB in the + same line; don't let it fall to the next +* minor: show quote characters for HTML element Q, rather than italics +* trivial bug 387: treat inside
...
as a newline +* trivial bug 930: refresh status bar when key prefix is eaten +* trivial bug 776: ``elinks -remote http://elinks.cz/'' no longer clears + the screen +* enhancement 121: if a mailcap entry indicates 'copiousoutput', ELinks + itself acts as a pager +* enhancement 790: If-Modified-Since and If-None-Match +* enhancement: HTTP negotiate-auth using GSSAPI +* enhancement 517: fixed and enabled HTTP bzip2 decompression +* enhancement: LZMA decompression +* enhancement: FSP progress indicator and password prompt +* enhancement: autocreate directories needed to download a file +* enhancement: ``Add server'' button in the cookie manager +* enhancement 887: ``Save'' in the cookie manager now saves cookies + even if unmodified +* enhancement 145: internal clipboard support +* enhancement: new actions kill-word-back, move-backward-word, + move-forward-word +* enhancements 687, 688: options ui.tabs.top, ui.show_menu_bar_always +* enhancement: highlight links as one enters link prefixes +* enhancement: backspace backs out the last digit of the prefix +* enhancement: in text type-ahead searching, don't follow current link + on enter +* enhancement: add support for parsing space separated CSS class + attribute values +* enhancement: mouse wheel support over GPM (contrib/gpm-wheel.patch), + and on BSD via moused -z 4 +* enhancement: 24-bit truecolor mode +* enhancement 622: -dump-color-mode +* enhancement: support Ctrl+Alt+letter key combinations +* enhancement 381: reduce memory consumption of codepages and some + other arrays +* enhancement in user SMJS: new properties/functions elinks.action, + elinks.execute, elinks.globhist, elinks.load_uri, elinks.vs + +Build system and compile-time errors (ignore if you don't build ELinks): + +* bug 725: fix version checking for Ruby in 'configure' +* enhancement: if make -k was used and a sub-Make fails, build the + rest before propagating +* enhancement: avoid compilation of vernum.c in 'make install' +* enhancement: make uninstall +* experimental enhancements: --with-python=DIRECTORY, --with-gc=DIRECTORY +* experimental enhancement: native Win32 port + +Changes in the experimental ECMAScript support: + +* disabled by default, as mentioned under ``Incompatibilities'' above +* execute event-handler scripts as function bodies, so ``return'' + statements work as intended +* fix error ``forms.namedItem is not a function'' +* enhancement: SEE ECMAScript backend, an alternative to SpiderMonkey +* enhancement: handling onsubmit +* workaround: window.open remembers the last few URLs and doesn't + reopen them when incremental rendering reruns the onload script +* enhancement: better handling of form.action assignments +* enhancement: form[x] looks up controls also by 'id', not only 'name' +* enhancement: added document.location.href, input.selectedIndex, + window.setTimeout, window.status + +Changes in the experimental SGML/DOM implementation: + +* enhancement: minimalistic RSS renderer +* enhancement: source highlighting also recognizes + application/xhtml+xml and application/docbook+xml. It doesn't yet + support arbitrary XML though. +* enhancement: make it possible to use more CSS properties with the + source highlighting +* enhancement: handle for HTML source rendering +* enhancement: add support for scanning comment endings such as + '--!>' correctly +* enhancement: incremental parsing +* and more. ////////////////////////////////////////////////////////////////////// The following changes should be removed from NEWS before ELinks 0.12.0 is released. They are currently listed here just to show that they have already been considered. +* Not clear whether the bugs have been fixed: + - (bugfix 674) Reproduceable crashes while trying to unsubscribe + from a community on Orkut + - (bugfix 770) Download resuming simply restarts the download * Only partially fixed bugs: - (bugfix 764) int/long type punning in options - - (bugfix 725) Fixes version checking for Ruby in 'configure' - (bugfix 890) Change colors 0-15 to match xterm defaults. The bug report also requests asking xterm to report its palette, but that part will be delayed to 0.13 or later. + - (bugfix 784) attributes corrupt character entity references if + terminal charset != document charset * Fixed bugs that were not in previous versions: - (bugfix) Fix a crash when adding a server in the cookie manager. - (bugfix) cookies: "Add Server" ignores "cookies.accept_policy". @@ -210,8 +178,6 @@ have already been considered. - (bugfix 747) Properly deselect the main menu instead of crashing - (bugfix 778) ELinks crashes on binary files when document.plain.display_links is set - - (bugfix 784) UTF-8 mode misconverts non-ASCII entity in Latin-1 - document - (bugfix 782) UTF-8 buffer overwritten while in use - (bugfix) switch_to_tab: Prevent "tab number out of range" assertion failure. @@ -219,7 +185,6 @@ have already been considered. - (bugfix 821) I cannot enter national characters in dialog boxes - (bugfix 834) Gzip decompression doesn't work - (bugfix) Fix out-of-bound access to the quote_char buffer - - (bugfix 788) compile error with --enable-perl - (bugfix 827) Crash with term charset set to Unicode and UTF-8 I/O disabled - (bugfix 826) too small table for double-cell characters @@ -235,6 +200,28 @@ have already been considered. as entity references - (bugfix 935) Yes and No buttons override the bottom border of the dialog. + - (bugfix in SEE) Use frame->name instead of target avoiding + possible segfault. + - (bugfix 957) crash within js_Interpret: cx->fp points to freed + memory + - (bugfix 920) assertion priority >= prev_priority failed: queue is + not sorted +* Already backported to a previous release but not listed there: + - (enhancement) Activate link only when onClick returns true. + Fixed bug 786 in ELinks 0.11.2. + - when the configure script cleans old object files, this no longer + causes it to loop. Commit 564b67883b189a05839bcd2a30d8d4c6eb89c66d + in ELinks 0.11.1. + - don't include for MIN and MAX because it may interfere with + CONFIG_IPV6 on Linux. Commit 63797ae9b331efd91be27512bd9d5b2e2ff74741 + in ELinks 0.11.1. + - Debian bug 400872: include for off_t. + (Related to bug 936 but not the same.) + Commit 135a79a3c309af36cf963f1d3c34b07f296fa2f7 in ELinks 0.11.3. + - bug 107: recognize "localhost" in file: URIs. Cannot reproduce in + earlier versions. + - fix compilation under gcc 4.x. Backported from gentoo portage. + Commit bcabd8b7951f3319199811088e607501296ee573 in ELinks 0.11.3. * Reverted changes: - (new feature) document.write, reverted in 2c087e52e74528a720621186b91880463e039d50 @@ -263,8 +250,67 @@ have already been considered. (commit 539f756438fca4264ab937b2ccfba2351e916a16) - (bugfix) Don't claim that the authentication is for HTTP. (commit ef2f6383c6f0bed576e6f69030eacc4931b42a27) + - (enhancement) Reject invalid UTF-8 input from documents and + terminals + - (bugfix) Decode UTF-8 only from bytes, not from codes of special + keys. + - (enhancement) "Resize terminal" tries to use the window size + increment. + - (bugfix) Subprocess forked for SIGTSTP calls _exit, not exit. + - (enhancement) Tell the user how to move bookmarks. + - (enhancement) Localization updates. For this to be important, we + should at least list the languages. + - (enhancement) Ctrl+characters don't trigger hotkeys in menus and + dialogs. + - (bitrot) Fix two warnings on Mac OS X. + - (enhancement) reduce warnings on gcc 4.2 snapshots + * don't use cmp -b, which FreeBSD doesn't support. This is commit + 7a5f699a88c5fc89c510854b04702c16c30ece5a in src/dom/test/ which + is run only by "make test" rather than "make". + * support much longer locale-specific timestamps when formatting a + directory listing. LC_TIME=fi_FI.UTF-8 now works. Let's treat + this as part of the UTF-8 support. + * enhancement in user SMJS: elinks.alert no longer displays as an + "error" ////////////////////////////////////////////////////////////////////// +ELinks 0.11.3.GIT now: +---------------------- + +To be released as 0.11.4. + +* critical bug 755: fix crashes due to dangling pointers to struct + form_state +* critical bug 945: don't crash if a Lua script calls e.g. error(nil) +* major bug 956: don't reuse pointers to SpiderMonkey objects that may + have been collected as garbage. This fix causes bug 954. +* CVE-2007-2027: check if the program path contains "src/" before + using ../po files +* important Debian bug 380347: prevent a buffer overflow in entity_cache + and a possible subsequent crash +* major bug 788: don't read STRLEN n_a, which isn't initialized by + POPpx of Perl v5.8.8 and later +* fix query parsing in file: URIs for local CGI (was broken in 0.11.3) +* bug 691: don't look up bogus IPv4 addresses based on characters of a + hostname +* bug 712: GnuTLS works on https://www-s.uiuc.edu/[] +* fix passive FTP over IPv6 when connect() fails with EINPROGRESS +* minor bug 951 in user SMJS: garbage-collect SMJS objects on 'File -> + Flush all caches' to work around their holding cache entries busy +* minor bug 396: never show empty filename in the what-to-do dialog +* minor bug 461: ensure contrast in blank areas, to keep the cursor visible +* minor bug 928: properly display no-break spaces in a UTF-8 document + if the terminal uses some other charset +* trivial bug 947: document.html.wrap_nbsp also affects text in tables +* build bug 950: fix ``config/install-sh: No such file or directory'' + on SunOS +* build bug 936: fix errors about undefined off_t (autoheader + incompatibility) +* build: update SpiderMonkey configure check Debian compatibility +* build: use $(CPPFLAGS) rather than $(AM_CFLAGS) +* minor build bug 960: fix errors in loadmsgcat.c if mmap() exists but + munmap() doesn't + ELinks 0.11.3: -------------- @@ -305,7 +351,7 @@ Released on 2007-04-15. * remove a garbage character from the end of the authentication prompt * bugs 872, 886: editing or deleting cookies in the cookie manager should cause a save -* secure file saving: restore umask after _all_ failure conditions +* secure file saving: restore umask after *all* failure conditions * decode the fragment identifier extracted from the URI when looking it up * bug 768 in experimental Python scripting: link with e.g. -lpython2.4 @@ -402,6 +448,7 @@ ELinks 0.10.0 (Thelma): Released on 2004-12-24. +* licensed under GPLv2 only * simple CSS * simple JavaScript/ECMAScript support by the SpiderMonkey Mozilla JS engine * plain-text mark-up (_^Hx to underline, x^Hx to embolden) @@ -416,12 +463,12 @@ Released on 2004-12-24. * incremental searching (press '#/') * Perl scripting back-end (experimental) * build-time configurability and feature documentation through features.conf -* Mozilla-compatible -remote option (http://www.mozilla.org/unix/remote.html) -* support for specifying IP family as protocol postfix (i.e. http4 or ftp6) +* Mozilla-compatible -remote option (http://www.mozilla.org/unix/remote.html[]) +* support for specifying IP family as protocol postfix (e.g. http4 or ftp6) * internationalized domain names via libidn (RFC 3490) * data URI protocol (RFC 2397) * gopher protocol (RFC 1436) -* NNTP protocol (RFC 977 and 2980) (experimental) +* NNTP protocol (RFC 977 and RFC 2980) (experimental) * build system fine-tuned to use automake conditionals * -localhost option to block connections to remote hosts * -verbose option to control messages printed at startup diff --git a/TODO b/TODO index 1c7fc09d..4ecf0e02 100644 --- a/TODO +++ b/TODO @@ -1,20 +1,18 @@ -The ELinks TODO items are kept in Bugzilla (http://bugzilla.elinks.cz/), -look for the bugs with 'enhancement' severity. Some generic goals are still -kept here, though, to be more on the developers' eyes ;-). - - -What yet needs to take its way to Bugzilla: - - Rewrite HTML parser (see the SGML+DOM stuff: src/dom/ & src/document/dom) - - Reorganization of user interface (nothing particular at all, just an -uncertain feel that it could be better and bear a look of some UI designer ;) +TODO list +========= +The ELinks TODO items are kept in Bugzilla ; +look for the bugs with 'enhancement' severity. More general goals are +still kept here, though, to be more visible to developers. ;-) Finally, +the code contains several (greppable) "FIXME" and "TODO" notes regarding +smaller fixes and enhancements. General goals: - Write some more documentation.. docs, a lot of docs! + - Rewrite HTML parser (see the SGML+DOM stuff: src/dom/ & src/document/dom) - General code cleanup + - Write more documentation; docs, a lot of docs! - Speed/memory optimizations + - General code cleanup + + - Speed/memory optimizations diff --git a/autogen.sh b/autogen.sh index 79d526c0..f1e9f900 100755 --- a/autogen.sh +++ b/autogen.sh @@ -12,6 +12,11 @@ aclocal echo autoheader... autoheader +# The timestamp of stamp-h.in indicates when config.h.in was last +# generated or found to be already correct. Create stamp-h.in so +# that it gets included in elinks-*.tar.gz and Makefile won't try +# to run a possibly incompatible version of autoheader (bug 936). +echo timestamp > stamp-h.in echo autoconf... autoconf diff --git a/configure.in b/configure.in index e9eec53a..5e1f6bb9 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,9 @@ dnl Process this file with autoconf to produce a configure script. -AC_PREREQ(2.13) +dnl Autoconf 2.13 generates an incomplete config.h.in; see ELinks bug 936. +dnl Autoconf 2.59 is installed in the computer that generates our daily +dnl snapshots, so we need to be compatible with that. +AC_PREREQ(2.59) AC_INIT(src/main/main.c) AC_CONFIG_AUX_DIR(config) @@ -465,7 +468,7 @@ AC_DEFUN([EL_CONFIG_OPTIONAL_LIBRARY], EL_CONFIG_OPTIONAL_LIBRARY(CONFIG_GPM, gpm, gpm.h, gpm, Gpm_Open, [ --without-gpm disable gpm (mouse) support]) -EL_CONFIG_OPTIONAL_LIBRARY(CONFIG_GZIP, zlib, zlib.h, z, gzdopen, +EL_CONFIG_OPTIONAL_LIBRARY(CONFIG_GZIP, zlib, zlib.h, z, gzclearerr, [ --without-zlib disable zlib support]) EL_CONFIG_OPTIONAL_LIBRARY(CONFIG_BZIP2, bzlib, bzlib.h, bz2, BZ2_bzReadOpen, @@ -572,14 +575,9 @@ AC_ARG_WITH(see, [ --with-see enable Simple Ecmascript Engine (SEE # to compile CVS. Also, the macro seems to be really stupid regarding searching # for Guile in $PATH etc. --pasky -AC_MSG_CHECKING([for SEE]) - CONFIG_ECMASCRIPT_SEE=no if test "$enable_see" = "yes"; then - AC_MSG_RESULT(yes); - ## Based on the SEE_FLAGS macro. - if test -d "$withval"; then SEE_PATH="$withval:$PATH" else @@ -587,16 +585,24 @@ if test "$enable_see" = "yes"; then fi AC_PATH_PROG(SEE_CONFIG, libsee-config, no, $SEE_PATH) - - ## First, let's just see if we can find Guile at all. + AC_MSG_CHECKING([for SEE (2.0.1131 or later)]) if test "$SEE_CONFIG" != no; then - cf_result="yes"; - + EL_SAVE_FLAGS SEE_LIBS="`$SEE_CONFIG --libs`" SEE_CFLAGS="`$SEE_CONFIG --cppflags`" - LIBS="$SEE_LIBS $LIBS" - EL_CONFIG(CONFIG_ECMASCRIPT_SEE, [SEE]) - AC_SUBST(SEE_CFLAGS) + CPPFLAGS="$SEE_CFLAGS $CPPFLAGS" + LIBS="$SEE_LIBS $LIBS_X" + AC_TRY_LINK([#include ],[#if SEE_VERSION_API_MAJOR < 2 + #error SEE too old + #endif + ], cf_result=yes, cf_result=no) + EL_RESTORE_FLAGS + if test "$cf_result" = yes; then + LIBS="$SEE_LIBS $LIBS" + EL_CONFIG(CONFIG_ECMASCRIPT_SEE, [SEE]) + AC_SUBST(SEE_CFLAGS) + fi + AC_MSG_RESULT($cf_result) else if test -n "$withval" && test "x$withval" != xno; then AC_MSG_ERROR([SEE not found]) @@ -604,18 +610,15 @@ if test "$enable_see" = "yes"; then AC_MSG_WARN([SEE support disabled]) fi fi -else - AC_MSG_RESULT(no); fi - dnl =================================================================== dnl Check for SpiderMonkey, optional even if installed. dnl =================================================================== AC_ARG_WITH(spidermonkey, [ --without-spidermonkey disable SpiderMonkey Mozilla JavaScript engine support], [if test "$withval" = no; then disable_spidermonkey=yes; fi]) -AC_MSG_CHECKING([for SpiderMonkey]) +AC_MSG_CHECKING([for SpiderMonkey (1.5 RC3a or later)]) EL_SAVE_FLAGS cf_result=no @@ -641,7 +644,7 @@ if test -z "$disable_spidermonkey"; then AC_TRY_LINK([#define XP_UNIX #include ], - [JS_GetImplementationVersion()], + [JS_GetReservedSlot(NULL, NULL, 0, NULL)], cf_result=yes, cf_result=no) fi done diff --git a/contrib/debian/copyright b/contrib/debian/copyright index 31780b2a..dbe377ea 100644 --- a/contrib/debian/copyright +++ b/contrib/debian/copyright @@ -9,7 +9,6 @@ Copyright: This program is free software. You may redistribute it and/or modify it under the terms of The GNU General Public License, as published by the Free -Software Foundation; either version 2, or (at your option) any later -version. A copy of this license is in the file -/usr/share/common-licenses/GPL. +Software Foundation, specifically version 2 of the License. A copy of this +license is in the file /usr/share/common-licenses/GPL-2. diff --git a/contrib/elinks.conf b/contrib/elinks.conf deleted file mode 100644 index 6dc251c9..00000000 --- a/contrib/elinks.conf +++ /dev/null @@ -1,3087 +0,0 @@ -## ELinks 0.11.CVS configuration file - -## This is ELinks configuration file. You can edit it manually, -## if you wish so, but keep in mind that this file is overwritten -## by ELinks when you save options through UI and you are out of -## luck with your formatting and own comments then, so beware. -## -## Obviously, if you don't like what ELinks is going to do with -## this file, you can change it by altering the config.saving_style -## option. Come on, aren't we friendly guys after all? - - - -############################## -# Automatically saved options -# - -## bookmarks -# Bookmark options. - - ## bookmarks.file_format - # File format for bookmarks (affects both reading and saving): - # 0 is the default native ELinks format - # 1 is XBEL universal XML bookmarks format (NO NATIONAL CHARS SUPPORT!) - set bookmarks.file_format = 0 - - ## bookmarks.folder_state [0|1] - # 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 ELinks is run. - set bookmarks.folder_state = 1 - - -## config -# Configuration handling options. - - ## config.comments - # Amount of comments automatically written to the config file: - # 0 is no comments are written - # 1 is only the "blurb" (name+type) is written - # 2 is only the description is written - # 3 is full comments are written - set config.comments = 3 - - ## config.indentation - # Shift width of one indentation level in the configuration - # file. Zero means that no indentation is performed at all - # when saving the configuration. - set config.indentation = 2 - - ## config.saving_style - # Determines what happens when you tell ELinks to save options: - # 0 is only values of current options are altered - # 1 is values of current options are altered and missing options - # are added at the end of the file - # 2 is the configuration file is rewritten from scratch - # 3 is values of current options are altered and missing options - # CHANGED during this ELinks session are added at the end of - # the file - set config.saving_style = 2 - - ## config.i18n [0|1] - # 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. - set config.i18n = 0 - - ## config.saving_style_w [0|1] - # This is internal option used when displaying a warning about - # obsolete config.saving_style. You shouldn't touch it. - set config.saving_style_w = 0 - - ## config.show_template [0|1] - # Show template options in autocreated trees in the options - # manager and save them to the configuration file. - set config.show_template = 0 - - -## connection -# Connection options. - - ## connection.ssl - # SSL options. - - ## connection.ssl.client_cert - # X509 client certificate options. - - ## connection.ssl.client_cert.enable [0|1] - # Enable or not the sending of X509 client certificates - # to servers which request them. - set connection.ssl.client_cert.enable = 0 - - ## connection.ssl.client_cert.file - # The location of a file containing the client certificate - # and unencrypted private key in PEM format. If unset, the - # file pointed to by the X509_CLIENT_CERT variable is used - # instead. - set connection.ssl.client_cert.file = "" - - - ## connection.ssl.cert_verify [0|1] - # Verify the peer's SSL certificate. Note that this - # needs extensive configuration of OpenSSL by the user. - set connection.ssl.cert_verify = 0 - - - ## connection.async_dns [0|1] - # Whether to use asynchronous DNS resolving. - set connection.async_dns = 1 - - ## connection.max_connections - # Maximum number of concurrent connections. - set connection.max_connections = 10 - - ## connection.max_connections_to_host - # Maximum number of concurrent connections to a given host. - set connection.max_connections_to_host = 2 - - ## connection.receive_timeout - # Receive timeout (in seconds). - set connection.receive_timeout = 120 - - ## connection.retries - # Number of tries to establish a connection. - # Zero means try forever. - set connection.retries = 3 - - ## connection.try_ipv4 [0|1] - # 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 an URL - # in the style of i.e. http4://elinks.or.cz/. - set connection.try_ipv4 = 1 - - ## connection.try_ipv6 [0|1] - # 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 an URL - # in the style of i.e. http6://elinks.or.cz/. - set connection.try_ipv6 = 1 - - ## connection.unrestartable_receive_timeout - # Timeout for non-restartable connections (in seconds). - set connection.unrestartable_receive_timeout = 600 - - -## cookies -# Cookies options. - - ## cookies.accept_policy - # Cookies accepting policy: - # 0 is accept no cookies - # 1 is ask for confirmation before accepting cookie - # 2 is accept all cookies - set cookies.accept_policy = 2 - - ## cookies.max_age - # Cookie maximum age (in days): - # -1 is use cookie's expiration date if any - # 0 is force expiration at the end of session, ignoring cookie's - # expiration date - # 1+ is use cookie's expiration date, but limit age to the given - # number of days - set cookies.max_age = -1 - - ## cookies.paranoid_security [0|1] - # 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. - set cookies.paranoid_security = 0 - - ## cookies.save [0|1] - # Whether cookies should be loaded from and save to disk. - set cookies.save = 1 - - ## cookies.resave [0|1] - # Save cookies after each change in cookies list? No effect when - # cookie saving (cookies.save) is off. - set cookies.resave = 1 - - -## document -# Document options. - - ## document.browse - # Document browsing options (mainly interactivity). - - ## document.browse.accesskey - # 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. - - ## document.browse.accesskey.auto_follow [0|1] - # Automatically follow a link or submit a form if appropriate - # accesskey is pressed - this is the standard behaviour, but it's - # considered dangerous. - set document.browse.accesskey.auto_follow = 0 - - ## document.browse.accesskey.display [0|1] - # Display access key in link info. - set document.browse.accesskey.display = 0 - - ## document.browse.accesskey.priority - # Priority of 'accesskey' HTML attribute: - # 0 is first try all normal bindings; if it fails, check accesskey - # 1 is first try only frame bindings; if it fails, check accesskey - # 2 is first check accesskey (this can be dangerous) - set document.browse.accesskey.priority = 0 - - - ## document.browse.forms - # Options for handling of the forms interaction. - - ## document.browse.forms.auto_submit [0|1] - # Automagically submit a form when enter is pressed with a text - # field selected. - set document.browse.forms.auto_submit = 1 - - ## document.browse.forms.confirm_submit [0|1] - # Ask for confirmation when submitting a form. - set document.browse.forms.confirm_submit = 1 - - ## document.browse.forms.input_size - # Default form input size if none is specified. - set document.browse.forms.input_size = 20 - - ## document.browse.forms.insert_mode [0|1] - # 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 - # a text field 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. - set document.browse.forms.insert_mode = 1 - - ## document.browse.forms.show_formhist [0|1] - # Ask if a login form should be saved to file or not. - # This option only disables the dialog, already saved login - # forms are unaffected. - set document.browse.forms.show_formhist = 0 - - - ## document.browse.images - # Options for handling of images. - - ## document.browse.images.display_style - # Display style for image tags when displayed: - # 0 means always display IMG - # 1 means always display filename - # 2 means display alt/title attribute if possible, IMG if not - # 3 means display alt/title attribute if possible, filename if not - set document.browse.images.display_style = 2 - - ## document.browse.images.filename_maxlen - # Maximum length of image filename when displayed: - # 0 means always display full filename - # 1-500 means display filename with this maximal length; - # if it is longer, the middle is substituted by an asterisk - set document.browse.images.filename_maxlen = 0 - - ## document.browse.images.image_link_tagging - # When to enclose image links: - # 0 means never - # 1 means never if alt or title are provided (old behavior) - # 2 means always - set document.browse.images.image_link_tagging = 1 - - ## document.browse.images.image_link_prefix - # Prefix string to use to mark image links. - set document.browse.images.image_link_prefix = "[" - - ## document.browse.images.image_link_suffix - # Suffix string to use to mark image links. - set document.browse.images.image_link_suffix = "]" - - ## document.browse.images.label_maxlen - # Maximum length of image label (alt/title): - # 0 means always display full label - # 1-500 means display label with this maximal length; - # if it is longer, the middle is substituted by an asterisk - set document.browse.images.label_maxlen = 0 - - ## document.browse.images.show_as_links [0|1] - # Display links to images without an alt attribute. If this option - # is off, these images are completely invisible. - set document.browse.images.show_as_links = 0 - - ## document.browse.images.show_any_as_links [0|1] - # 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. - set document.browse.images.show_any_as_links = 1 - - - ## document.browse.links - # Options for handling of links to other documents. - - ## document.browse.links.active_link - # Options for the active link. - - ## document.browse.links.active_link.colors - # Active link colors. - - ## document.browse.links.active_link.colors.background - # Default background color. - set document.browse.links.active_link.colors.background = "blue" - - ## document.browse.links.active_link.colors.text - # Default text color. - set document.browse.links.active_link.colors.text = "black" - - - ## document.browse.links.active_link.enable_color [0|1] - # Enable use of the active link background and text color - # settings instead of the link colors from the document. - set document.browse.links.active_link.enable_color = 0 - - ## document.browse.links.active_link.bold [0|1] - # Make the active link text bold. - set document.browse.links.active_link.bold = 0 - - ## document.browse.links.active_link.invert [0|1] - # Invert the fore- and background color so the link stands out. - set document.browse.links.active_link.invert = 1 - - ## document.browse.links.active_link.underline [0|1] - # Underline the active link. - set document.browse.links.active_link.underline = 0 - - - ## document.browse.links.color_dirs [0|1] - # Highlight links to directories in FTP and local directory listing. - set document.browse.links.color_dirs = 1 - - ## document.browse.links.numbering [0|1] - # Display numbers next to the links. - set document.browse.links.numbering = 0 - - ## document.browse.links.target_blank - # Define how to handle links having target=_blank set: - # 0 means open link in current tab - # 1 means open link in new tab in foreground - # 2 means open link in new tab in background - set document.browse.links.target_blank = 0 - - ## document.browse.links.use_tabindex [0|1] - # 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 navigating the document. - set document.browse.links.use_tabindex = 1 - - ## document.browse.links.number_keys_select_link - # Number keys select links rather than specify command prefixes. This - # is a tristate: - # 0 means never - # 1 means if document.browse.links.numbering = 1 - # 2 means always - set document.browse.links.number_keys_select_link = 1 - - ## document.browse.links.warn_malicious [0|1] - # 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. - set document.browse.links.warn_malicious = 1 - - ## document.browse.links.wraparound [0|1] - # When pressing 'down' on the last link, jump at the first one, and - # vice versa. - set document.browse.links.wraparound = 0 - - - ## document.browse.scrolling - # Scrolling options. - - ## document.browse.scrolling.horizontal_extended [0|1] - # Whether to allow horizontal scrolling when the document - # does not extend off the screen. Useful for copy/paste - # operations. - set document.browse.scrolling.horizontal_extended = 1 - - ## document.browse.scrolling.horizontal_step - # Number of columns to scroll when a key bound to scroll-left or scroll- - # right is pressed and no prefix was given. - set document.browse.scrolling.horizontal_step = 8 - - ## document.browse.scrolling.margin - # Size of the virtual margin - when you click inside of that margin, - # document scrolls in that direction. - set document.browse.scrolling.margin = 3 - - ## document.browse.scrolling.vertical_step - # Number of lines to scroll when a key bound to scroll-up or scroll- - # down is pressed and no prefix was given. - set document.browse.scrolling.vertical_step = 2 - - - ## document.browse.search - # Options for searching. - - ## document.browse.search.case [0|1] - # Whether the search should match the document text while maintaining - # case sensitivity. - set document.browse.search.case = 0 - - ## document.browse.search.regex - # Enable searching with regular expressions: - # 0 for plain text searching - # 1 for basic regular expression searches - # 2 for extended regular expression searches - set document.browse.search.regex = 0 - - ## document.browse.search.show_hit_top_bottom [0|1] - # Whether to show a dialog when the search hits top or bottom of the - # document. - set document.browse.search.show_hit_top_bottom = 1 - - ## document.browse.search.wraparound [0|1] - # Wrap around when searching. Currently only used for typeahead. - set document.browse.search.wraparound = 1 - - ## document.browse.search.show_not_found - # How to inform the user when nothing is matched: - # 0 means do nothing - # 1 means beep the terminal - # 2 means pop up message box - set document.browse.search.show_not_found = 2 - - ## document.browse.search.typeahead - # 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. - # - # 0 disables this feature; typeahead searching will only be used - # when you press a key bound to search-typeahead or similar - # 1 automatically starts typeahead searching thru link text - # 2 automatically starts typeahead searching thru all document text - set document.browse.search.typeahead = 0 - - - ## document.browse.margin_width - # Horizontal text margin. - set document.browse.margin_width = 3 - - ## document.browse.refresh [0|1] - # 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. - set document.browse.refresh = 1 - - ## document.browse.minimum_refresh_time - # 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. - set document.browse.minimum_refresh_time = 1000 - - ## document.browse.table_move_order [0|1] - # Move by columns in table, instead of rows. - set document.browse.table_move_order = 0 - - - ## document.cache - # Cache options. - - ## document.cache.format - # Format cache options. - - ## document.cache.format.size - # 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 - 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.) - set document.cache.format.size = 5 - - - ## document.cache.memory - # Memory cache options. - - ## document.cache.memory.size - # Memory cache size (in bytes). - set document.cache.memory.size = 1M - - - ## document.cache.cache_redirects [0|1] - # Cache even redirects sent by server (usually thru HTTP by a 302 - # HTTP code and a Location header). This was the original behaviour - # for a quite some time, but it causes problems in a situation very - # common to various web login systems - frequently, when accessing - # 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 - thus if you will enable - # it, even previous redirects will be taken from cache instead of - # asking the server. - set document.cache.cache_redirects = 0 - - ## document.cache.ignore_cache_control [0|1] - # Ignore Cache-Control and Pragma server headers. - # When set, the document is cached even with 'Cache-Control: no-cache'. - set document.cache.ignore_cache_control = 1 - - - ## document.codepage - # Charset options. - - ## document.codepage.assume - # Default document codepage. 'System' stands for - # a codepage determined by a selected locale. - set document.codepage.assume = "System" - - ## document.codepage.force_assumed [0|1] - # Ignore charset info sent by server. - set document.codepage.force_assumed = 0 - - - ## document.colors - # Default document color settings. - - ## document.colors.text - # Default text color. - set document.colors.text = "gray75" - - ## document.colors.background - # Default background color. - set document.colors.background = "black" - - ## document.colors.link - # Default link color. - set document.colors.link = "blue" - - ## document.colors.vlink - # Default visited link color. - set document.colors.vlink = "yellow" - - ## document.colors.image - # Default image link color. - set document.colors.image = "darkolivegreen" - - ## document.colors.bookmark - # Default bookmarked link color. - set document.colors.bookmark = "hotpink" - - ## document.colors.dirs - # Default directory color. - # See document.browse.links.color_dirs option. - set document.colors.dirs = "yellow" - - ## document.colors.allow_dark_on_black [0|1] - # Allow dark colors on black background, and vice versa. (!) - # By default the colors have their contrast increased (that is - # different from having it ensured through the ensure_contrast - # option), so that the foreground and the background do not have - # too similar colors. This option turns this off. - set document.colors.allow_dark_on_black = 0 - - ## document.colors.ensure_contrast [0|1] - # Makes sure that the back- and foreground color are never equal. - set document.colors.ensure_contrast = 1 - - ## document.colors.use_document_colors - # Use colors specified in document: - # 0 is use always the default settings - # 1 is use document colors if available, except background - # 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. - set document.colors.use_document_colors = 2 - - - ## document.css - # Options concerning how to use CSS for styling documents. - - ## document.css.enable [0|1] - # Enable adding of CSS style info to documents. - set document.css.enable = 1 - - ## document.css.import [0|1] - # 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. - set document.css.import = 1 - - ## document.css.stylesheet - # 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. - set document.css.stylesheet = "" - - - ## document.download - # Options regarding files downloading and handling. - - ## document.download.directory - # Default download directory. - set document.download.directory = "./" - - ## document.download.set_original_time [0|1] - # Set the timestamp of each downloaded file to the timestamp - # stored on the server. - set document.download.set_original_time = 0 - - ## document.download.overwrite - # Prevent overwriting the local files: - # 0 is files will silently be overwritten - # 1 is add a suffix .{number} (for example '.1') to the name - # 2 is ask the user - set document.download.overwrite = 2 - - ## document.download.notify_bell - # Audio notification when download is completed: - # 0 is never - # 1 is when background notification is active - # 2 is always - set document.download.notify_bell = 0 - - - ## document.dump - # Dump output options. - - ## document.dump.codepage - # Codepage used in dump output. 'System' stands for - # a codepage determined by a selected locale. - set document.dump.codepage = "System" - - ## document.dump.header - # Header string used in dumps. %u is substituted by URL. - set document.dump.header = "" - - ## document.dump.footer - # Footer string used in dumps. %u is substituted by URL. - set document.dump.footer = "" - - ## document.dump.separator - # String which separates two dumps. - set document.dump.separator = " - -" - - ## document.dump.width - # Width of screen in characters when dumping documents. - set document.dump.width = 80 - - - ## document.history - # History options. - - ## document.history.global - # Global history options. - - ## document.history.global.enable [0|1] - # Enable global history ("history of all pages visited"). - set document.history.global.enable = 1 - - ## document.history.global.max_items - # Maximum number of entries in the global history. - set document.history.global.max_items = 1k - - ## document.history.global.display_type - # What to display in global history dialog: - # 0 is URLs - # 1 is page titles - set document.history.global.display_type = 0 - - - ## document.history.keep_unhistory [0|1] - # Keep unhistory ("forward history"). - set document.history.keep_unhistory = 1 - - - ## document.html - # Options concerning the display of HTML pages. - - ## document.html.display_frames [0|1] - # Display frames. - set document.html.display_frames = 1 - - ## document.html.display_tables [0|1] - # Display tables. - set document.html.display_tables = 1 - - ## document.html.display_subs [0|1] - # Display subscripts (as [thing]). - set document.html.display_subs = 1 - - ## document.html.display_sups [0|1] - # Display superscripts (as ^thing). - set document.html.display_sups = 1 - - ## document.html.link_display - # How to render tags from the HTML header: - # 0 is nothing - # 1 is title - # 2 is name in addition - # 3 is hreflang in addition - # 4 is type in addition - # 5 is everything - set document.html.link_display = 2 - - ## document.html.underline_links [0|1] - # Underline links. - set document.html.underline_links = 0 - - ## document.html.wrap_nbsp [0|1] - # 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. - set document.html.wrap_nbsp = 0 - - - ## document.plain - # Options concerning the display of plain text pages. - - ## document.plain.display_links [0|1] - # Display URIs in the document as links. - set document.plain.display_links = 0 - - ## document.plain.compress_empty_lines [0|1] - # Compress successive empty lines to only one in displayed text. - set document.plain.compress_empty_lines = 0 - - - ## document.uri_passing - # Rules for passing URIs to external commands. - - - -## ecmascript -# ECMAScript options. - - ## ecmascript.enable [0|1] - # Whether to run those scripts inside of documents. - set ecmascript.enable = 1 - - ## ecmascript.error_reporting [0|1] - # Open a message box when a script reports an error. - set ecmascript.error_reporting = 0 - - ## ecmascript.max_exec_time - # Maximum execution time in seconds for a script. - set ecmascript.max_exec_time = 5 - - ## ecmascript.block_window_opening [0|1] - # Whether to disallow scripts to open new windows or tabs. - set ecmascript.block_window_opening = 0 - - -## infofiles -# Options for information files in ~/.elinks. - - ## infofiles.save_interval - # Interval at which to trigger information files in ~/.elinks - # to be saved to disk if they has changed (seconds; 0 to disable) - set infofiles.save_interval = 300 - - ## infofiles.secure_save [0|1] - # First write data to unique temporary file, then rename this file - # upon successfully finishing this. Note that this relates only to - # config files, not downloaded files. You may want to disable - # it if you are using some exotic permissions for concerned files. - # Secure file saving is automagically disabled if file is symlink. - # Warning: some systems (ie. OS/2, Win32) require that destination - # file doesn't exist when rename(3) is called, breaking atomicity, - # and reducing reliability of this feature. - set infofiles.secure_save = 1 - - ## infofiles.secure_save_fsync [0|1] - # When using secure file saving, call fsync(3), if the OS - # supports it, to force the OS immediately to write the data - # to permanent storage. This is optional for those who wish - # to avoid excessive disk I/O. - set infofiles.secure_save_fsync = 1 - - -## mime -# MIME-related options (handlers of various MIME types). - - ## mime.extension - # Extension <-> MIME type association. - - ## mime.extension.gif - # MIME-type matching this file extension ('*' is used here in place - # of '.'). - set mime.extension.gif = "image/gif" - - ## mime.extension.jpg - # MIME-type matching this file extension ('*' is used here in place - # of '.'). - set mime.extension.jpg = "image/jpg" - - ## mime.extension.jpeg - # MIME-type matching this file extension ('*' is used here in place - # of '.'). - set mime.extension.jpeg = "image/jpeg" - - ## mime.extension.png - # MIME-type matching this file extension ('*' is used here in place - # of '.'). - set mime.extension.png = "image/png" - - ## mime.extension.txt - # MIME-type matching this file extension ('*' is used here in place - # of '.'). - set mime.extension.txt = "text/plain" - - ## mime.extension.htm - # MIME-type matching this file extension ('*' is used here in place - # of '.'). - set mime.extension.htm = "text/html" - - - ## mime.handler - # A file type handler is a set of information about how to use - # an external program to view a file. It is possible to refer to it - # for several MIME types -- e.g., you can define an 'image' handler - # to which mime.type.image.png, mime.type.image.jpeg, and so on will - # refer; or one might define a handler for a more specific type of file - # -- e.g., PDF files. - # Note you must define both a MIME handler and a MIME type association - # for it to work. - - - ## mime.mailcap - # Options for mailcap support. - - ## mime.mailcap.enable [0|1] - # Enable mailcap support. - set mime.mailcap.enable = 1 - - ## mime.mailcap.path - # Mailcap search path. Colon-separated list of files. - # Leave as "" to use MAILCAP environment variable instead. - set mime.mailcap.path = "~/.mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap:/usr/share/mailcap:/usr/share/misc/mailcap" - - ## mime.mailcap.ask [0|1] - # Ask before using the handlers defined by mailcap. - set mime.mailcap.ask = 1 - - ## mime.mailcap.description - # Type of description to show in "what to do with this file" - # query dialog: - # 0 is show "mailcap" - # 1 is show program to be run - # 2 is show mailcap description field if any; "mailcap" otherwise - set mime.mailcap.description = 0 - - ## mime.mailcap.prioritize [0|1] - # Prioritize entries by the order of the files in the mailcap - # path. This means that wildcard entries (like: image/*) will - # also be checked before deciding the handler. - set mime.mailcap.prioritize = 1 - - - ## mime.mimetypes - # Options for the support of mime.types files. These files - # can be used to find the content type of an URL by looking at - # the extension of the file name. - - ## mime.mimetypes.enable [0|1] - # Enable mime.types support. - set mime.mimetypes.enable = 1 - - ## mime.mimetypes.path - # The search path for mime.types files. Colon-separated list of files. - set mime.mimetypes.path = "~/.mime.types:/etc/mime.types:/usr/etc/mime.types:/usr/local/etc/mime.types:/usr/share/mime.types:/usr/share/misc/mime.types" - - - ## mime.type - # Handler <-> MIME type association. The first sub-tree is the MIME - # class while the second sub-tree is the MIME type (ie. image/gif - # handler will reside at mime.type.image.gif). Each MIME type option - # should contain (case-sensitive) name of the MIME handler (its - # properties are stored at mime.handler.). - - - ## mime.default_type - # Document MIME-type to assume by default (when we are unable to - # guess it properly from known information about the document). - set mime.default_type = "application/octet-stream" - - -## protocol -# Protocol specific options. - - ## protocol.file - # Options specific to local browsing. - - ## protocol.file.cgi - # Local CGI specific options. - - ## protocol.file.cgi.path - # Colon separated list of directories, where CGI scripts are stored. - set protocol.file.cgi.path = "" - - ## protocol.file.cgi.policy [0|1] - # Whether to execute local CGI scripts. - set protocol.file.cgi.policy = 0 - - - ## protocol.file.allow_special_files [0|1] - # Whether to allow reading from non-regular files. - # Note this can be dangerous; reading /dev/urandom or - # /dev/zero can ruin your day! - set protocol.file.allow_special_files = 0 - - ## protocol.file.show_hidden_files [0|1] - # When set to false, files with name starting with a dot will be - # hidden in local directories listing. - set protocol.file.show_hidden_files = 1 - - ## protocol.file.try_encoding_extensions [0|1] - # When set, if we can't open a file named 'filename', we'll try - # to open 'filename' with some encoding extension appended - # (ie. 'filename.gz'); it depends on the supported encodings. - set protocol.file.try_encoding_extensions = 1 - - - ## protocol.ftp - # FTP specific options. - - ## protocol.ftp.proxy - # FTP proxy configuration. - - ## protocol.ftp.proxy.host - # Host and port-number (host:port) of the FTP proxy, or blank. - # If it's blank, FTP_PROXY environment variable is checked as well. - set protocol.ftp.proxy.host = "" - - - ## protocol.ftp.anon_passwd - # FTP anonymous password to be sent. - set protocol.ftp.anon_passwd = "some@host.domain" - - ## protocol.ftp.use_pasv [0|1] - # Use PASV instead of PORT (passive vs active mode, IPv4 only). - set protocol.ftp.use_pasv = 1 - - ## protocol.ftp.use_epsv [0|1] - # Use EPSV instead of EPRT (passive vs active mode, IPv6 only). - set protocol.ftp.use_epsv = 0 - - - ## protocol.http - # HTTP-specific options. - - ## protocol.http.bugs - # Server-side HTTP bugs workarounds. - - ## protocol.http.bugs.accept_charset [0|1] - # The Accept-Charset header is quite long and sending it can trigger - # bugs in some rarely found servers. - set protocol.http.bugs.accept_charset = 1 - - ## protocol.http.bugs.allow_blacklist [0|1] - # Allow blacklisting of buggy servers. - set protocol.http.bugs.allow_blacklist = 1 - - ## protocol.http.bugs.broken_302_redirect [0|1] - # Broken 302 redirect (violates RFC but compatible with Netscape). - # This is a problem for a lot of web discussion boards and the like. - # If they will do strange things to you, try to play with this. - set protocol.http.bugs.broken_302_redirect = 1 - - ## protocol.http.bugs.post_no_keepalive [0|1] - # Disable keepalive connection after POST request. - set protocol.http.bugs.post_no_keepalive = 0 - - ## protocol.http.bugs.http10 [0|1] - # Use HTTP/1.0 protocol instead of HTTP/1.1. - set protocol.http.bugs.http10 = 0 - - - ## protocol.http.proxy - # HTTP proxy configuration. - - ## protocol.http.proxy.host - # Host and port-number (host:port) of the HTTP proxy, or blank. - # If it's blank, HTTP_PROXY environment variable is checked as well. - set protocol.http.proxy.host = "" - - ## protocol.http.proxy.user - # Proxy authentication username. - set protocol.http.proxy.user = "" - - ## protocol.http.proxy.passwd - # Proxy authentication password. - set protocol.http.proxy.passwd = "" - - - ## protocol.http.referer - # HTTP referer sending options. HTTP referer is a special header - # sent in the HTTP requests, which is supposed to contain the previous - # page visited by the browser. This way, the server can know what link - # did you follow when accessing that page. However, this behaviour - # can unfortunately considerably affect privacy and can lead even to a - # security problem on some badly designed web pages. - - ## protocol.http.referer.policy - # Mode of sending HTTP referer: - # 0 is send no referer - # 1 is send current URL as referer - # 2 is send fixed fake referer - # 3 is send previous URL as referer (correct, but insecure) - set protocol.http.referer.policy = 3 - - ## protocol.http.referer.fake - # Fake referer to be sent when policy is 2. - set protocol.http.referer.fake = "" - - - ## protocol.http.accept_language - # Send Accept-Language header. - set protocol.http.accept_language = "" - - ## protocol.http.accept_ui_language [0|1] - # Request localised versions of documents from web-servers (using the - # Accept-Language header) using the language you have configured for - # ELinks' user-interface (this also affects navigator.language ECMAScript - # value available to scripts). Note that some see this as a potential - # security risk because it tells web-masters and the FBI sniffers about - # your language preference. - set protocol.http.accept_ui_language = 1 - - ## protocol.http.trace [0|1] - # If active, all HTTP requests are sent with TRACE as their method - # rather than GET or POST. This is useful for debugging of both ELinks - # and various server-side scripts --- the server only returns the client's - # request back to the client verbatim. Note that this type of request may - # not be enabled on all servers. - set protocol.http.trace = 0 - - ## protocol.http.user_agent - # Change the User Agent ID. That means identification string, which - # is sent to HTTP server when a document is requested. The 'textmode' - # token in the first field is our silent attempt to establish this as - # a standard for new textmode user agents, so that the webmasters can - # have just a single uniform test for these if they are ie. pushing - # some lite version to them automagically. - # %v in the string means ELinks version - # %s in the string means system identification - # %t in the string means size of the terminal - # %b in the string means number of bars displayed by ELinks - # Use " " if you don't want any User-Agent header to be sent at all. - set protocol.http.user_agent = "ELinks/%v (textmode; %s; %t-%b)" - - - ## protocol.https - # HTTPS-specific options. - - ## protocol.https.proxy - # HTTPS proxy configuration. - - ## protocol.https.proxy.host - # Host and port-number (host:port) of the HTTPS CONNECT proxy, or blank. - # If it's blank, HTTPS_PROXY environment variable is checked as well. - set protocol.https.proxy.host = "" - - - - ## protocol.nntp - # NNTP and news specific options. - - ## protocol.nntp.server - # Used when resolving news: URIs. If set to the empty string - # the value of the NNTPSERVER environment variable will be used. - set protocol.nntp.server = "" - - ## protocol.nntp.header_entries - # Comma separated list of which entries in the article header - # to show. E.g. 'Subject' and 'From'. - # All header entries can be read in the header info dialog. - set protocol.nntp.header_entries = "Subject,From,Date,Message-ID,Newsgroups" - - - ## protocol.rewrite - # Rules for rewriting URIs entered in the goto dialog. - # It makes it possible to define a set of prefixes that will - # be expanded if they match a string entered in the goto dialog. - # The prefixes can be dumb, meaning that they work only like - # URI abbreviations, or smart ones, making it possible to pass - # arguments to them like search engine keywords. - - ## protocol.rewrite.dumb - # Dumb prefixes, see enable-dumb description for details. - - ## protocol.rewrite.dumb.arc - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.arc = "http://web.archive.org/web/*/%c" - - ## protocol.rewrite.dumb.b - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.b = "http://babelfish.altavista.com/babelfish/tr" - - ## protocol.rewrite.dumb.bug - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.bug = "http://bugzilla.elinks.or.cz/" - - ## protocol.rewrite.dumb.bz - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.bz = "http://bugzilla.elinks.or.cz/" - - ## protocol.rewrite.dumb.cia - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.cia = "http://cia.navi.cx/" - - ## protocol.rewrite.dumb.d - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.d = "http://www.dict.org" - - ## protocol.rewrite.dumb.dbug - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.dbug = "http://bugs.debian.org/" - - ## protocol.rewrite.dumb.documentation - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.documentation = "http://elinks.or.cz/documentation" - - ## protocol.rewrite.dumb.dpkg - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.dpkg = "http://packages.debian.org/" - - ## protocol.rewrite.dumb.e2 - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.e2 = "http://www.everything2.org/" - - ## protocol.rewrite.dumb.elinks - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.elinks = "http://elinks.or.cz/" - - ## protocol.rewrite.dumb.fm - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.fm = "http://freshmeat.net/" - - ## protocol.rewrite.dumb.g - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.g = "http://www.google.com/" - - ## protocol.rewrite.dumb.gg - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.gg = "http://www.google.com/" - - ## protocol.rewrite.dumb.go - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.go = "http://www.google.com/" - - ## protocol.rewrite.dumb.lua - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.lua = "file:///usr/share/doc/lua40-doc/manual/idx.html" - - ## protocol.rewrite.dumb.pycur - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.pycur = "http://www.python.org/doc/current/" - - ## protocol.rewrite.dumb.pydev - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.pydev = "http://www.python.org/dev/doc/devel/" - - ## protocol.rewrite.dumb.pyhelp - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.pyhelp = "http://starship.python.net/crew/theller/pyhelp.cgi" - - ## protocol.rewrite.dumb.pyvault - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.pyvault = "http://www.vex.net/parnassus/" - - ## protocol.rewrite.dumb.sd - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.sd = "http://slashdot.org/" - - ## protocol.rewrite.dumb.sf - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.sf = "http://www.sourceforge.net/" - - ## protocol.rewrite.dumb.vcss - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.vcss = "http://jigsaw.w3.org/css-validator/validator?uri=%c" - - ## protocol.rewrite.dumb.vhtml - # Replacement URI for this dumbprefix: - # %c in the string means the current URL - # %% in the string means '%' - set protocol.rewrite.dumb.vhtml = "http://validator.w3.org/check?uri=%c" - - - ## protocol.rewrite.smart - # Smart prefixes, see enable-smart description for details. - - ## protocol.rewrite.smart.a - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.a = "http://acronymfinder.com/af-query.asp?String=exact&Acronym=%s" - - ## protocol.rewrite.smart.arc - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.arc = "http://web.archive.org/web/*/%s" - - ## protocol.rewrite.smart.bb - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.bb = "http://babelfish.altavista.com/babelfish/tr?urltext=%s" - - ## protocol.rewrite.smart.bb_en_fr - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.bb_en_fr = "http://babelfish.altavista.com/babelfish/tr?lp=en_fr&submit=1&urltext=%s" - - ## protocol.rewrite.smart.bb_fr_en - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.bb_fr_en = "http://babelfish.altavista.com/babelfish/tr?lp=fr_en&submit=1&urltext=%s" - - ## protocol.rewrite.smart.bug - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.bug = "http://bugzilla.elinks.or.cz/show_bug.cgi?id=%s" - - ## protocol.rewrite.smart.cambridge - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.cambridge = "http://dictionary.cambridge.org/results.asp?searchword=%s" - - ## protocol.rewrite.smart.cliki - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.cliki = "http://www.cliki.net/admin/search?words=%s" - - ## protocol.rewrite.smart.cr - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.cr = "http://www.rfc-editor.org/cgi-bin/rfcsearch.pl?searchwords=%s&format=http&abstract=abson&keywords=keyon&num=25" - - ## protocol.rewrite.smart.czen - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.czen = "http://www.slovnik.cz/bin/ecd?ecd_il=1&ecd_vcb=%s&ecd_trn=translate&ecd_trn_dir=1&ecd_lines=15&ecd_hptxt=0" - - ## protocol.rewrite.smart.d - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.d = "http://www.dict.org/bin/Dict?Query=%s&Form=Dict1&Strategy=*&Database=*&submit=Submit+query" - - ## protocol.rewrite.smart.dbug - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.dbug = "http://bugs.debian.org/%s" - - ## protocol.rewrite.smart.dict - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.dict = "http://dictionary.reference.com/search?q=%s" - - ## protocol.rewrite.smart.dmoz - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.dmoz = "http://search.dmoz.org/cgi-bin/search?search=%s" - - ## protocol.rewrite.smart.dpkg - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.dpkg = "http://packages.debian.org/%s" - - ## protocol.rewrite.smart.draft - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.draft = "http://www.rfc-editor.org/cgi-bin/idsearch.pl?searchwords=%s&format=http&abstract=abson&keywords=keyon&num=25" - - ## protocol.rewrite.smart.e2 - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.e2 = "http://www.everything2.org/?node=%s" - - ## protocol.rewrite.smart.emacs - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.emacs = "http://www.emacswiki.org/cgi-bin/wiki.pl?search=%s" - - ## protocol.rewrite.smart.encz - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.encz = "http://www.slovnik.cz/bin/ecd?ecd_il=1&ecd_vcb=%s&ecd_trn=translate&ecd_trn_dir=0&ecd_lines=15&ecd_hptxt=0" - - ## protocol.rewrite.smart.fm - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.fm = "http://freshmeat.net/search/?q=%s" - - ## protocol.rewrite.smart.foldoc - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.foldoc = "http://wombat.doc.ic.ac.uk/foldoc/foldoc.cgi?%s" - - ## protocol.rewrite.smart.fsd - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.fsd = "http://directory.fsf.org/search/fsd-search.py?q=%s" - - ## protocol.rewrite.smart.g - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.g = "http://www.google.com/search?q=%s&btnG=Google+Search" - - ## protocol.rewrite.smart.gd - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gd = "http://www.google.com/search?q=%s&cat=gwd/Top" - - ## protocol.rewrite.smart.gg - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gg = "http://www.google.com/search?q=%s&btnG=Google+Search" - - ## protocol.rewrite.smart.gi - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gi = "http://images.google.com/images?q=%s" - - ## protocol.rewrite.smart.gn - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gn = "http://news.google.com/news?q=%s" - - ## protocol.rewrite.smart.go - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.go = "http://www.google.com/search?q=%s&btnG=Google+Search" - - ## protocol.rewrite.smart.google - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.google = "http://www.google.com/search?q=%s" - - ## protocol.rewrite.smart.gr - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gr = "http://groups.google.com/groups?q=%s" - - ## protocol.rewrite.smart.gwhat - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gwhat = "http://www.googlism.com/?ism=%s&name=2" - - ## protocol.rewrite.smart.gwhen - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gwhen = "http://www.googlism.com/?ism=%s&name=4" - - ## protocol.rewrite.smart.gwhere - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gwhere = "http://www.googlism.com/?ism=%s&name=3" - - ## protocol.rewrite.smart.gwho - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.gwho = "http://www.googlism.com/?ism=%s&name=1" - - ## protocol.rewrite.smart.id - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.id = "http://www.rfc-editor.org/cgi-bin/idsearch.pl?searchwords=%s&format=http&abstract=abson&keywords=keyon&num=25" - - ## protocol.rewrite.smart.imdb - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.imdb = "http://imdb.com/Find?%s" - - ## protocol.rewrite.smart.lxr - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.lxr = "http://lxr.linux.no/ident?i=%s" - - ## protocol.rewrite.smart.lyrics - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.lyrics = "http://music.lycos.com/lyrics/results.asp?QT=L&QW=%s" - - ## protocol.rewrite.smart.milestone-bugs - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.milestone-bugs = "http://bugzilla.elinks.or.cz/buglist.cgi?target_milestone=%s" - - ## protocol.rewrite.smart.mw - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.mw = "http://www.m-w.com/cgi-bin/dictionary?book=Dictionary&va=%s" - - ## protocol.rewrite.smart.mwt - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.mwt = "http://www.m-w.com/cgi-bin/thesaurus?book=Thesaurus&va=%s" - - ## protocol.rewrite.smart.onelook - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.onelook = "http://onelook.com/?w=%s&ls=a" - - ## protocol.rewrite.smart.py - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.py = "http://starship.python.net/crew/theller/pyhelp.cgi?keyword=%s&version=current" - - ## protocol.rewrite.smart.pydev - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.pydev = "http://starship.python.net/crew/theller/pyhelp.cgi?keyword=%s&version=devel" - - ## protocol.rewrite.smart.pyvault - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.pyvault = "http://py.vaults.ca/apyllo.py?find=%s" - - ## protocol.rewrite.smart.rfc - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.rfc = "http://www.rfc-editor.org/rfc/rfc%s.txt" - - ## protocol.rewrite.smart.rfcid - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.rfcid = "http://www.rfc-editor.org/cgi-bin/idsearch.pl?searchwords=%s&format=http&abstract=abson&keywords=keyon&num=25" - - ## protocol.rewrite.smart.rfcs - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.rfcs = "http://www.rfc-editor.org/cgi-bin/rfcsearch.pl?searchwords=%s&format=http&abstract=abson&keywords=keyon&num=25" - - ## protocol.rewrite.smart.savannah - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.savannah = "http://savannah.nongnu.org/search/?words=%s&type_of_search=soft&exact=1" - - ## protocol.rewrite.smart.sd - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.sd = "http://slashdot.org/search.pl?query=%s" - - ## protocol.rewrite.smart.sdc - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.sdc = "http://slashdot.org/search.pl?query=%s&op=comments" - - ## protocol.rewrite.smart.sdj - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.sdj = "http://slashdot.org/search.pl?query=%s&op=journals" - - ## protocol.rewrite.smart.sdp - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.sdp = "http://slashdot.org/search.pl?query=%s&op=polls" - - ## protocol.rewrite.smart.sdu - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.sdu = "http://slashdot.org/search.pl?query=%s&op=users" - - ## protocol.rewrite.smart.search-bugs - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.search-bugs = "http://bugzilla.elinks.or.cz/buglist.cgi?short_desc_type=allwordssubstr&short_desc=%s" - - ## protocol.rewrite.smart.sf - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.sf = "http://sourceforge.net/search/?q=%s" - - ## protocol.rewrite.smart.sfp - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.sfp = "http://sourceforge.net/projects/%s" - - ## protocol.rewrite.smart.thes - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.thes = "http://thesaurus.reference.com/search?q=%s" - - ## protocol.rewrite.smart.whatis - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.whatis = "http://uptime.netcraft.com/up/graph/?host=%s" - - ## protocol.rewrite.smart.wiki - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.wiki = "http://www.wikipedia.org/w/wiki.phtml?search=%s" - - ## protocol.rewrite.smart.wn - # Replacement URI for this smartprefix: - # %c in the string means the current URL - # %s in the string means the whole argument to smartprefix - # %0,%1,...,%9 means argument 0, 1, ..., 9 - # %% in the string means '%' - set protocol.rewrite.smart.wn = "http://www.cogsci.princeton.edu/cgi-bin/webwn1.7.1?stage=1&word=%s" - - - ## protocol.rewrite.enable-dumb [0|1] - # Enable dumb prefixes - simple URI abbreviations which can - # be written to the Goto URL dialog instead of actual URIs - i.e. - # if you write 'elinks' there, you are directed to - # http://elinks.or.cz/. - set protocol.rewrite.enable-dumb = 1 - - ## protocol.rewrite.enable-smart [0|1] - # Enable smart prefixes - URI templates triggered by writing - # given abbreviation to the Goto URL dialog followed by a list - # of arguments from which the actual URI is composed - i.e. - # 'gg:search keywords' or 'gn search keywords for news'. - set protocol.rewrite.enable-smart = 1 - - - ## protocol.smb - # SAMBA specific options. - - ## protocol.smb.credentials - # Credentials file passed to smbclient via -A option. - set protocol.smb.credentials = "" - - - ## protocol.user - # User protocols. Options in this tree specify external - # handlers for the appropriate protocols. Ie. - # protocol.user.mailto.unix. - - ## protocol.user.irc - - ## protocol.user.irc.unix - set protocol.user.irc.unix = "irc %u" - ## protocol.user.irc.unix-xwin - set protocol.user.irc.unix-xwin = "irc %u" - - ## protocol.user.mailto - - ## protocol.user.mailto.unix - set protocol.user.mailto.unix = "mutt %h -s \"%s\" -i \"%f\"" - ## protocol.user.mailto.unix-xwin - set protocol.user.mailto.unix-xwin = "mutt %h -s \"%s\" -i \"%f\"" - - ## protocol.user.telnet - - ## protocol.user.telnet.unix - set protocol.user.telnet.unix = "telnet %h %p" - ## protocol.user.telnet.unix-xwin - set protocol.user.telnet.unix-xwin = "telnet %h %p" - - ## protocol.user.tn3270 - - ## protocol.user.tn3270.unix - set protocol.user.tn3270.unix = "tn3270 %h %p" - ## protocol.user.tn3270.unix-xwin - set protocol.user.tn3270.unix-xwin = "tn3270 %h %p" - - - ## protocol.no_proxy - # Comma separated list of domains for which the proxy (HTTP/FTP) - # should be disabled. Optionally, a port can be specified for some - # domains as well. If it's blank, NO_PROXY environment variable is - # checked as well. - set protocol.no_proxy = "" - - -## terminal -# Terminal options. - - ## terminal.linux - # Options specific to this terminal type (according to $TERM value). - - ## terminal.linux.charset - set terminal.linux.charset = "System" - ## terminal.linux.underline [0|1] - set terminal.linux.underline = 0 - ## terminal.linux.transparency [0|1] - set terminal.linux.transparency = 1 - ## terminal.linux.colors - set terminal.linux.colors = 1 - ## terminal.linux.block_cursor [0|1] - set terminal.linux.block_cursor = 0 - ## terminal.linux.restrict_852 [0|1] - set terminal.linux.restrict_852 = 0 - ## terminal.linux.utf_8_io [0|1] - set terminal.linux.utf_8_io = 0 - ## terminal.linux.m11_hack [0|1] - set terminal.linux.m11_hack = 1 - ## terminal.linux.type - set terminal.linux.type = 2 - - ## terminal.vt100 - # Options specific to this terminal type (according to $TERM value). - - ## terminal.vt100.charset - set terminal.vt100.charset = "System" - ## terminal.vt100.underline [0|1] - set terminal.vt100.underline = 0 - ## terminal.vt100.transparency [0|1] - set terminal.vt100.transparency = 1 - ## terminal.vt100.colors - set terminal.vt100.colors = 0 - ## terminal.vt100.block_cursor [0|1] - set terminal.vt100.block_cursor = 0 - ## terminal.vt100.restrict_852 [0|1] - set terminal.vt100.restrict_852 = 0 - ## terminal.vt100.utf_8_io [0|1] - set terminal.vt100.utf_8_io = 0 - ## terminal.vt100.m11_hack [0|1] - set terminal.vt100.m11_hack = 0 - ## terminal.vt100.type - set terminal.vt100.type = 1 - - ## terminal.vt110 - # Options specific to this terminal type (according to $TERM value). - - ## terminal.vt110.charset - set terminal.vt110.charset = "System" - ## terminal.vt110.underline [0|1] - set terminal.vt110.underline = 0 - ## terminal.vt110.transparency [0|1] - set terminal.vt110.transparency = 1 - ## terminal.vt110.colors - set terminal.vt110.colors = 0 - ## terminal.vt110.block_cursor [0|1] - set terminal.vt110.block_cursor = 0 - ## terminal.vt110.restrict_852 [0|1] - set terminal.vt110.restrict_852 = 0 - ## terminal.vt110.utf_8_io [0|1] - set terminal.vt110.utf_8_io = 0 - ## terminal.vt110.m11_hack [0|1] - set terminal.vt110.m11_hack = 0 - ## terminal.vt110.type - set terminal.vt110.type = 1 - - ## terminal.xterm - # Options specific to this terminal type (according to $TERM value). - - ## terminal.xterm.charset - set terminal.xterm.charset = "System" - ## terminal.xterm.underline [0|1] - set terminal.xterm.underline = 1 - ## terminal.xterm.transparency [0|1] - set terminal.xterm.transparency = 1 - ## terminal.xterm.colors - set terminal.xterm.colors = 0 - ## terminal.xterm.block_cursor [0|1] - set terminal.xterm.block_cursor = 0 - ## terminal.xterm.restrict_852 [0|1] - set terminal.xterm.restrict_852 = 0 - ## terminal.xterm.utf_8_io [0|1] - set terminal.xterm.utf_8_io = 0 - ## terminal.xterm.m11_hack [0|1] - set terminal.xterm.m11_hack = 0 - ## terminal.xterm.type - set terminal.xterm.type = 1 - - ## terminal.xterm-color - # Options specific to this terminal type (according to $TERM value). - - ## terminal.xterm-color.charset - set terminal.xterm-color.charset = "System" - ## terminal.xterm-color.underline [0|1] - set terminal.xterm-color.underline = 1 - ## terminal.xterm-color.transparency [0|1] - set terminal.xterm-color.transparency = 1 - ## terminal.xterm-color.colors - set terminal.xterm-color.colors = 1 - ## terminal.xterm-color.block_cursor [0|1] - set terminal.xterm-color.block_cursor = 0 - ## terminal.xterm-color.restrict_852 [0|1] - set terminal.xterm-color.restrict_852 = 0 - ## terminal.xterm-color.utf_8_io [0|1] - set terminal.xterm-color.utf_8_io = 0 - ## terminal.xterm-color.m11_hack [0|1] - set terminal.xterm-color.m11_hack = 0 - ## terminal.xterm-color.type - set terminal.xterm-color.type = 1 - - ## terminal.xterm-256color - # Options specific to this terminal type (according to $TERM value). - - ## terminal.xterm-256color.charset - set terminal.xterm-256color.charset = "System" - ## terminal.xterm-256color.underline [0|1] - set terminal.xterm-256color.underline = 1 - ## terminal.xterm-256color.transparency [0|1] - set terminal.xterm-256color.transparency = 1 - ## terminal.xterm-256color.colors - set terminal.xterm-256color.colors = 2 - ## terminal.xterm-256color.block_cursor [0|1] - set terminal.xterm-256color.block_cursor = 0 - ## terminal.xterm-256color.restrict_852 [0|1] - set terminal.xterm-256color.restrict_852 = 0 - ## terminal.xterm-256color.utf_8_io [0|1] - set terminal.xterm-256color.utf_8_io = 0 - ## terminal.xterm-256color.m11_hack [0|1] - set terminal.xterm-256color.m11_hack = 0 - ## terminal.xterm-256color.type - set terminal.xterm-256color.type = 1 - - -## ui -# User interface options. - - ## ui.clock - # Digital clock in the status bar. - - ## ui.clock.enable [0|1] - # Whether to display a digital clock in the status bar. - set ui.clock.enable = 0 - - ## ui.clock.format - # Format string for the digital clock. See the strftime(3) - # manpage for details. - set ui.clock.format = "[%H:%M]" - - - ## ui.colors - # Default user interface color settings. - - ## ui.colors.color - # Color settings for color terminal. - - ## ui.colors.color.mainmenu - # Main menu bar colors. - - ## ui.colors.color.mainmenu.normal - # Unselected main menu bar item colors. - - ## ui.colors.color.mainmenu.normal.text - # Default text color. - set ui.colors.color.mainmenu.normal.text = "black" - - ## ui.colors.color.mainmenu.normal.background - # Default background color. - set ui.colors.color.mainmenu.normal.background = "white" - - - ## ui.colors.color.mainmenu.selected - # Selected main menu bar item colors. - - ## ui.colors.color.mainmenu.selected.text - # Default text color. - set ui.colors.color.mainmenu.selected.text = "green" - - ## ui.colors.color.mainmenu.selected.background - # Default background color. - set ui.colors.color.mainmenu.selected.background = "black" - - - ## ui.colors.color.mainmenu.hotkey - # Main menu hotkey colors. - - ## ui.colors.color.mainmenu.hotkey.normal - # Main menu unselected hotkey colors. - - ## ui.colors.color.mainmenu.hotkey.normal.text - # Default text color. - set ui.colors.color.mainmenu.hotkey.normal.text = "darkred" - - ## ui.colors.color.mainmenu.hotkey.normal.background - # Default background color. - set ui.colors.color.mainmenu.hotkey.normal.background = "white" - - - ## ui.colors.color.mainmenu.hotkey.selected - # Main menu selected hotkey colors. - - ## ui.colors.color.mainmenu.hotkey.selected.text - # Default text color. - set ui.colors.color.mainmenu.hotkey.selected.text = "darkred" - - ## ui.colors.color.mainmenu.hotkey.selected.background - # Default background color. - set ui.colors.color.mainmenu.hotkey.selected.background = "green" - - - - - ## ui.colors.color.menu - # Menu bar colors. - - ## ui.colors.color.menu.normal - # Unselected menu item colors. - - ## ui.colors.color.menu.normal.text - # Default text color. - set ui.colors.color.menu.normal.text = "black" - - ## ui.colors.color.menu.normal.background - # Default background color. - set ui.colors.color.menu.normal.background = "white" - - - ## ui.colors.color.menu.selected - # Selected menu item colors. - - ## ui.colors.color.menu.selected.text - # Default text color. - set ui.colors.color.menu.selected.text = "black" - - ## ui.colors.color.menu.selected.background - # Default background color. - set ui.colors.color.menu.selected.background = "green" - - - ## ui.colors.color.menu.marked - # Marked menu item colors. - - ## ui.colors.color.menu.marked.text - # Default text color. - set ui.colors.color.menu.marked.text = "red" - - ## ui.colors.color.menu.marked.background - # Default background color. - set ui.colors.color.menu.marked.background = "white" - - - ## ui.colors.color.menu.hotkey - # Menu item hotkey colors. - - ## ui.colors.color.menu.hotkey.normal - # Menu item unselected hotkey colors. - - ## ui.colors.color.menu.hotkey.normal.text - # Default text color. - set ui.colors.color.menu.hotkey.normal.text = "darkred" - - ## ui.colors.color.menu.hotkey.normal.background - # Default background color. - set ui.colors.color.menu.hotkey.normal.background = "white" - - - ## ui.colors.color.menu.hotkey.selected - # Menu item selected hotkey colors. - - ## ui.colors.color.menu.hotkey.selected.text - # Default text color. - set ui.colors.color.menu.hotkey.selected.text = "darkred" - - ## ui.colors.color.menu.hotkey.selected.background - # Default background color. - set ui.colors.color.menu.hotkey.selected.background = "green" - - - - ## ui.colors.color.menu.frame - # Menu frame colors. - - ## ui.colors.color.menu.frame.text - # Default text color. - set ui.colors.color.menu.frame.text = "black" - - ## ui.colors.color.menu.frame.background - # Default background color. - set ui.colors.color.menu.frame.background = "white" - - - - ## ui.colors.color.dialog - # Dialog colors. - - ## ui.colors.color.dialog.generic - # Generic dialog colors. - - ## ui.colors.color.dialog.generic.text - # Default text color. - set ui.colors.color.dialog.generic.text = "black" - - ## ui.colors.color.dialog.generic.background - # Default background color. - set ui.colors.color.dialog.generic.background = "white" - - - ## ui.colors.color.dialog.frame - # Dialog frame colors. - - ## ui.colors.color.dialog.frame.text - # Default text color. - set ui.colors.color.dialog.frame.text = "black" - - ## ui.colors.color.dialog.frame.background - # Default background color. - set ui.colors.color.dialog.frame.background = "white" - - - ## ui.colors.color.dialog.scrollbar - # Scrollbar colors. - - ## ui.colors.color.dialog.scrollbar.text - # Default text color. - set ui.colors.color.dialog.scrollbar.text = "black" - - ## ui.colors.color.dialog.scrollbar.background - # Default background color. - set ui.colors.color.dialog.scrollbar.background = "blue" - - - ## ui.colors.color.dialog.scrollbar-selected - # Scrollbar selected colors. - - ## ui.colors.color.dialog.scrollbar-selected.text - # Default text color. - set ui.colors.color.dialog.scrollbar-selected.text = "black" - - ## ui.colors.color.dialog.scrollbar-selected.background - # Default background color. - set ui.colors.color.dialog.scrollbar-selected.background = "green" - - - ## ui.colors.color.dialog.title - # Dialog title colors. - - ## ui.colors.color.dialog.title.text - # Default text color. - set ui.colors.color.dialog.title.text = "darkred" - - ## ui.colors.color.dialog.title.background - # Default background color. - set ui.colors.color.dialog.title.background = "white" - - - ## ui.colors.color.dialog.text - # Dialog text colors. - - ## ui.colors.color.dialog.text.text - # Default text color. - set ui.colors.color.dialog.text.text = "black" - - ## ui.colors.color.dialog.text.background - # Default background color. - set ui.colors.color.dialog.text.background = "white" - - - ## ui.colors.color.dialog.checkbox - # Dialog checkbox colors. - - ## ui.colors.color.dialog.checkbox.text - # Default text color. - set ui.colors.color.dialog.checkbox.text = "darkred" - - ## ui.colors.color.dialog.checkbox.background - # Default background color. - set ui.colors.color.dialog.checkbox.background = "white" - - - ## ui.colors.color.dialog.checkbox-selected - # Dialog selected checkbox colors. - - ## ui.colors.color.dialog.checkbox-selected.text - # Default text color. - set ui.colors.color.dialog.checkbox-selected.text = "yellow" - - ## ui.colors.color.dialog.checkbox-selected.background - # Default background color. - set ui.colors.color.dialog.checkbox-selected.background = "green" - - - ## ui.colors.color.dialog.checkbox-label - # Dialog checkbox label colors. - - ## ui.colors.color.dialog.checkbox-label.text - # Default text color. - set ui.colors.color.dialog.checkbox-label.text = "black" - - ## ui.colors.color.dialog.checkbox-label.background - # Default background color. - set ui.colors.color.dialog.checkbox-label.background = "white" - - - ## ui.colors.color.dialog.button - # Dialog button colors. - - ## ui.colors.color.dialog.button.text - # Default text color. - set ui.colors.color.dialog.button.text = "white" - - ## ui.colors.color.dialog.button.background - # Default background color. - set ui.colors.color.dialog.button.background = "blue" - - - ## ui.colors.color.dialog.button-selected - # Dialog selected button colors. - - ## ui.colors.color.dialog.button-selected.text - # Default text color. - set ui.colors.color.dialog.button-selected.text = "yellow" - - ## ui.colors.color.dialog.button-selected.background - # Default background color. - set ui.colors.color.dialog.button-selected.background = "green" - - - ## ui.colors.color.dialog.button-shortcut - # Dialog button colors. - - ## ui.colors.color.dialog.button-shortcut.text - # Default text color. - set ui.colors.color.dialog.button-shortcut.text = "yellow" - - ## ui.colors.color.dialog.button-shortcut.background - # Default background color. - set ui.colors.color.dialog.button-shortcut.background = "blue" - - - ## ui.colors.color.dialog.button-shortcut-selected - # Dialog selected button colors. - - ## ui.colors.color.dialog.button-shortcut-selected.text - # Default text color. - set ui.colors.color.dialog.button-shortcut-selected.text = "white" - - ## ui.colors.color.dialog.button-shortcut-selected.background - # Default background color. - set ui.colors.color.dialog.button-shortcut-selected.background = "blue" - - - ## ui.colors.color.dialog.field - # Dialog text field colors. - - ## ui.colors.color.dialog.field.text - # Default text color. - set ui.colors.color.dialog.field.text = "white" - - ## ui.colors.color.dialog.field.background - # Default background color. - set ui.colors.color.dialog.field.background = "blue" - - - ## ui.colors.color.dialog.field-text - # Dialog field text colors. - - ## ui.colors.color.dialog.field-text.text - # Default text color. - set ui.colors.color.dialog.field-text.text = "yellow" - - ## ui.colors.color.dialog.field-text.background - # Default background color. - set ui.colors.color.dialog.field-text.background = "blue" - - - ## ui.colors.color.dialog.meter - # Dialog meter colors. - - ## ui.colors.color.dialog.meter.text - # Default text color. - set ui.colors.color.dialog.meter.text = "white" - - ## ui.colors.color.dialog.meter.background - # Default background color. - set ui.colors.color.dialog.meter.background = "blue" - - - ## ui.colors.color.dialog.shadow - # Dialog shadow colors (see ui.shadows option). - - ## ui.colors.color.dialog.shadow.text - # Default text color. - set ui.colors.color.dialog.shadow.text = "black" - - ## ui.colors.color.dialog.shadow.background - # Default background color. - set ui.colors.color.dialog.shadow.background = "black" - - - - ## ui.colors.color.title - # Title bar colors. - - ## ui.colors.color.title.title-bar - # Generic title bar colors. - - ## ui.colors.color.title.title-bar.text - # Default text color. - set ui.colors.color.title.title-bar.text = "black" - - ## ui.colors.color.title.title-bar.background - # Default background color. - set ui.colors.color.title.title-bar.background = "white" - - - ## ui.colors.color.title.title-text - # Title bar text colors. - - ## ui.colors.color.title.title-text.text - # Default text color. - set ui.colors.color.title.title-text.text = "black" - - ## ui.colors.color.title.title-text.background - # Default background color. - set ui.colors.color.title.title-text.background = "white" - - - - ## ui.colors.color.status - # Status bar colors. - - ## ui.colors.color.status.status-bar - # Generic status bar colors. - - ## ui.colors.color.status.status-bar.text - # Default text color. - set ui.colors.color.status.status-bar.text = "black" - - ## ui.colors.color.status.status-bar.background - # Default background color. - set ui.colors.color.status.status-bar.background = "white" - - - ## ui.colors.color.status.status-text - # Status bar text colors. - - ## ui.colors.color.status.status-text.text - # Default text color. - set ui.colors.color.status.status-text.text = "black" - - ## ui.colors.color.status.status-text.background - # Default background color. - set ui.colors.color.status.status-text.background = "white" - - - - ## ui.colors.color.tabs - # Tabs bar colors. - - ## ui.colors.color.tabs.unvisited - # Tab colors for tabs that have not been - # selected since they completed loading. - - ## ui.colors.color.tabs.unvisited.text - # Default text color. - set ui.colors.color.tabs.unvisited.text = "darkblue" - - ## ui.colors.color.tabs.unvisited.background - # Default background color. - set ui.colors.color.tabs.unvisited.background = "white" - - - ## ui.colors.color.tabs.normal - # Unselected tab colors. - - ## ui.colors.color.tabs.normal.text - # Default text color. - set ui.colors.color.tabs.normal.text = "black" - - ## ui.colors.color.tabs.normal.background - # Default background color. - set ui.colors.color.tabs.normal.background = "white" - - - ## ui.colors.color.tabs.loading - # Tab colors for tabs that are loading in the background. - - ## ui.colors.color.tabs.loading.text - # Default text color. - set ui.colors.color.tabs.loading.text = "darkred" - - ## ui.colors.color.tabs.loading.background - # Default background color. - set ui.colors.color.tabs.loading.background = "white" - - - ## ui.colors.color.tabs.selected - # Selected tab colors. - - ## ui.colors.color.tabs.selected.text - # Default text color. - set ui.colors.color.tabs.selected.text = "black" - - ## ui.colors.color.tabs.selected.background - # Default background color. - set ui.colors.color.tabs.selected.background = "green" - - - ## ui.colors.color.tabs.separator - # Tab separator colors. - - ## ui.colors.color.tabs.separator.text - # Default text color. - set ui.colors.color.tabs.separator.text = "brown" - - ## ui.colors.color.tabs.separator.background - # Default background color. - set ui.colors.color.tabs.separator.background = "white" - - - - ## ui.colors.color.searched - # Searched string highlight colors. - - ## ui.colors.color.searched.text - # Default text color. - set ui.colors.color.searched.text = "black" - - ## ui.colors.color.searched.background - # Default background color. - set ui.colors.color.searched.background = "lime" - - - - ## ui.colors.mono - # Color settings for non-color terminal. - - ## ui.colors.mono.mainmenu - # Main menu bar colors. - - ## ui.colors.mono.mainmenu.normal - # Unselected main menu bar item colors. - - ## ui.colors.mono.mainmenu.normal.text - # Default text color. - set ui.colors.mono.mainmenu.normal.text = "black" - - ## ui.colors.mono.mainmenu.normal.background - # Default background color. - set ui.colors.mono.mainmenu.normal.background = "white" - - - ## ui.colors.mono.mainmenu.selected - # Selected main menu bar item colors. - - ## ui.colors.mono.mainmenu.selected.text - # Default text color. - set ui.colors.mono.mainmenu.selected.text = "gray" - - ## ui.colors.mono.mainmenu.selected.background - # Default background color. - set ui.colors.mono.mainmenu.selected.background = "black" - - - ## ui.colors.mono.mainmenu.hotkey - # Main menu hotkey colors. - - ## ui.colors.mono.mainmenu.hotkey.normal - # Main menu unselected hotkey colors. - - ## ui.colors.mono.mainmenu.hotkey.normal.text - # Default text color. - set ui.colors.mono.mainmenu.hotkey.normal.text = "black" - - ## ui.colors.mono.mainmenu.hotkey.normal.background - # Default background color. - set ui.colors.mono.mainmenu.hotkey.normal.background = "white" - - - ## ui.colors.mono.mainmenu.hotkey.selected - # Main menu selected hotkey colors. - - ## ui.colors.mono.mainmenu.hotkey.selected.text - # Default text color. - set ui.colors.mono.mainmenu.hotkey.selected.text = "black" - - ## ui.colors.mono.mainmenu.hotkey.selected.background - # Default background color. - set ui.colors.mono.mainmenu.hotkey.selected.background = "white" - - - - - ## ui.colors.mono.menu - # Menu bar colors. - - ## ui.colors.mono.menu.normal - # Unselected menu item colors. - - ## ui.colors.mono.menu.normal.text - # Default text color. - set ui.colors.mono.menu.normal.text = "black" - - ## ui.colors.mono.menu.normal.background - # Default background color. - set ui.colors.mono.menu.normal.background = "white" - - - ## ui.colors.mono.menu.selected - # Selected menu item colors. - - ## ui.colors.mono.menu.selected.text - # Default text color. - set ui.colors.mono.menu.selected.text = "gray" - - ## ui.colors.mono.menu.selected.background - # Default background color. - set ui.colors.mono.menu.selected.background = "black" - - - ## ui.colors.mono.menu.marked - # Marked menu item colors. - - ## ui.colors.mono.menu.marked.text - # Default text color. - set ui.colors.mono.menu.marked.text = "gray" - - ## ui.colors.mono.menu.marked.background - # Default background color. - set ui.colors.mono.menu.marked.background = "white" - - - ## ui.colors.mono.menu.hotkey - # Menu item hotkey colors. - - ## ui.colors.mono.menu.hotkey.normal - # Menu item unselected hotkey colors. - - ## ui.colors.mono.menu.hotkey.normal.text - # Default text color. - set ui.colors.mono.menu.hotkey.normal.text = "gray" - - ## ui.colors.mono.menu.hotkey.normal.background - # Default background color. - set ui.colors.mono.menu.hotkey.normal.background = "black" - - - ## ui.colors.mono.menu.hotkey.selected - # Menu item selected hotkey colors. - - ## ui.colors.mono.menu.hotkey.selected.text - # Default text color. - set ui.colors.mono.menu.hotkey.selected.text = "gray" - - ## ui.colors.mono.menu.hotkey.selected.background - # Default background color. - set ui.colors.mono.menu.hotkey.selected.background = "black" - - - - ## ui.colors.mono.menu.frame - # Menu frame colors. - - ## ui.colors.mono.menu.frame.text - # Default text color. - set ui.colors.mono.menu.frame.text = "black" - - ## ui.colors.mono.menu.frame.background - # Default background color. - set ui.colors.mono.menu.frame.background = "white" - - - - ## ui.colors.mono.dialog - # Dialog colors. - - ## ui.colors.mono.dialog.generic - # Generic dialog colors. - - ## ui.colors.mono.dialog.generic.text - # Default text color. - set ui.colors.mono.dialog.generic.text = "black" - - ## ui.colors.mono.dialog.generic.background - # Default background color. - set ui.colors.mono.dialog.generic.background = "white" - - - ## ui.colors.mono.dialog.frame - # Dialog frame colors. - - ## ui.colors.mono.dialog.frame.text - # Default text color. - set ui.colors.mono.dialog.frame.text = "black" - - ## ui.colors.mono.dialog.frame.background - # Default background color. - set ui.colors.mono.dialog.frame.background = "white" - - - ## ui.colors.mono.dialog.scrollbar - # Scrollbar colors. - - ## ui.colors.mono.dialog.scrollbar.text - # Default text color. - set ui.colors.mono.dialog.scrollbar.text = "white" - - ## ui.colors.mono.dialog.scrollbar.background - # Default background color. - set ui.colors.mono.dialog.scrollbar.background = "black" - - - ## ui.colors.mono.dialog.scrollbar-selected - # Scrollbar selected colors. - - ## ui.colors.mono.dialog.scrollbar-selected.text - # Default text color. - set ui.colors.mono.dialog.scrollbar-selected.text = "black" - - ## ui.colors.mono.dialog.scrollbar-selected.background - # Default background color. - set ui.colors.mono.dialog.scrollbar-selected.background = "white" - - - ## ui.colors.mono.dialog.title - # Dialog title colors. - - ## ui.colors.mono.dialog.title.text - # Default text color. - set ui.colors.mono.dialog.title.text = "gray" - - ## ui.colors.mono.dialog.title.background - # Default background color. - set ui.colors.mono.dialog.title.background = "black" - - - ## ui.colors.mono.dialog.text - # Dialog text colors. - - ## ui.colors.mono.dialog.text.text - # Default text color. - set ui.colors.mono.dialog.text.text = "black" - - ## ui.colors.mono.dialog.text.background - # Default background color. - set ui.colors.mono.dialog.text.background = "white" - - - ## ui.colors.mono.dialog.checkbox - # Dialog checkbox colors. - - ## ui.colors.mono.dialog.checkbox.text - # Default text color. - set ui.colors.mono.dialog.checkbox.text = "black" - - ## ui.colors.mono.dialog.checkbox.background - # Default background color. - set ui.colors.mono.dialog.checkbox.background = "white" - - - ## ui.colors.mono.dialog.checkbox-selected - # Dialog selected checkbox colors. - - ## ui.colors.mono.dialog.checkbox-selected.text - # Default text color. - set ui.colors.mono.dialog.checkbox-selected.text = "white" - - ## ui.colors.mono.dialog.checkbox-selected.background - # Default background color. - set ui.colors.mono.dialog.checkbox-selected.background = "black" - - - ## ui.colors.mono.dialog.checkbox-label - # Dialog checkbox label colors. - - ## ui.colors.mono.dialog.checkbox-label.text - # Default text color. - set ui.colors.mono.dialog.checkbox-label.text = "black" - - ## ui.colors.mono.dialog.checkbox-label.background - # Default background color. - set ui.colors.mono.dialog.checkbox-label.background = "white" - - - ## ui.colors.mono.dialog.button - # Dialog button colors. - - ## ui.colors.mono.dialog.button.text - # Default text color. - set ui.colors.mono.dialog.button.text = "black" - - ## ui.colors.mono.dialog.button.background - # Default background color. - set ui.colors.mono.dialog.button.background = "white" - - - ## ui.colors.mono.dialog.button-selected - # Dialog selected button colors. - - ## ui.colors.mono.dialog.button-selected.text - # Default text color. - set ui.colors.mono.dialog.button-selected.text = "white" - - ## ui.colors.mono.dialog.button-selected.background - # Default background color. - set ui.colors.mono.dialog.button-selected.background = "black" - - - ## ui.colors.mono.dialog.button-shortcut - # Dialog button colors. - - ## ui.colors.mono.dialog.button-shortcut.text - # Default text color. - set ui.colors.mono.dialog.button-shortcut.text = "white" - - ## ui.colors.mono.dialog.button-shortcut.background - # Default background color. - set ui.colors.mono.dialog.button-shortcut.background = "black" - - - ## ui.colors.mono.dialog.button-shortcut-selected - # Dialog selected button colors. - - ## ui.colors.mono.dialog.button-shortcut-selected.text - # Default text color. - set ui.colors.mono.dialog.button-shortcut-selected.text = "black" - - ## ui.colors.mono.dialog.button-shortcut-selected.background - # Default background color. - set ui.colors.mono.dialog.button-shortcut-selected.background = "white" - - - ## ui.colors.mono.dialog.field - # Dialog text field colors. - - ## ui.colors.mono.dialog.field.text - # Default text color. - set ui.colors.mono.dialog.field.text = "gray" - - ## ui.colors.mono.dialog.field.background - # Default background color. - set ui.colors.mono.dialog.field.background = "black" - - - ## ui.colors.mono.dialog.field-text - # Dialog field text colors. - - ## ui.colors.mono.dialog.field-text.text - # Default text color. - set ui.colors.mono.dialog.field-text.text = "gray" - - ## ui.colors.mono.dialog.field-text.background - # Default background color. - set ui.colors.mono.dialog.field-text.background = "black" - - - ## ui.colors.mono.dialog.meter - # Dialog meter colors. - - ## ui.colors.mono.dialog.meter.text - # Default text color. - set ui.colors.mono.dialog.meter.text = "gray" - - ## ui.colors.mono.dialog.meter.background - # Default background color. - set ui.colors.mono.dialog.meter.background = "black" - - - ## ui.colors.mono.dialog.shadow - # Dialog shadow colors (see ui.shadows option). - - ## ui.colors.mono.dialog.shadow.text - # Default text color. - set ui.colors.mono.dialog.shadow.text = "black" - - ## ui.colors.mono.dialog.shadow.background - # Default background color. - set ui.colors.mono.dialog.shadow.background = "black" - - - - ## ui.colors.mono.title - # Title bar colors. - - ## ui.colors.mono.title.title-bar - # Generic title bar colors. - - ## ui.colors.mono.title.title-bar.text - # Default text color. - set ui.colors.mono.title.title-bar.text = "gray" - - ## ui.colors.mono.title.title-bar.background - # Default background color. - set ui.colors.mono.title.title-bar.background = "black" - - - ## ui.colors.mono.title.title-text - # Title bar text colors. - - ## ui.colors.mono.title.title-text.text - # Default text color. - set ui.colors.mono.title.title-text.text = "gray" - - ## ui.colors.mono.title.title-text.background - # Default background color. - set ui.colors.mono.title.title-text.background = "black" - - - - ## ui.colors.mono.status - # Status bar colors. - - ## ui.colors.mono.status.status-bar - # Generic status bar colors. - - ## ui.colors.mono.status.status-bar.text - # Default text color. - set ui.colors.mono.status.status-bar.text = "black" - - ## ui.colors.mono.status.status-bar.background - # Default background color. - set ui.colors.mono.status.status-bar.background = "white" - - - ## ui.colors.mono.status.status-text - # Status bar text colors. - - ## ui.colors.mono.status.status-text.text - # Default text color. - set ui.colors.mono.status.status-text.text = "black" - - ## ui.colors.mono.status.status-text.background - # Default background color. - set ui.colors.mono.status.status-text.background = "white" - - - - ## ui.colors.mono.tabs - # Tabs bar colors. - - ## ui.colors.mono.tabs.unvisited - # Tab colors for tabs that have not been - # selected since they completed loading. - - ## ui.colors.mono.tabs.unvisited.text - # Default text color. - set ui.colors.mono.tabs.unvisited.text = "gray" - - ## ui.colors.mono.tabs.unvisited.background - # Default background color. - set ui.colors.mono.tabs.unvisited.background = "white" - - - ## ui.colors.mono.tabs.normal - # Unselected tab colors. - - ## ui.colors.mono.tabs.normal.text - # Default text color. - set ui.colors.mono.tabs.normal.text = "black" - - ## ui.colors.mono.tabs.normal.background - # Default background color. - set ui.colors.mono.tabs.normal.background = "white" - - - ## ui.colors.mono.tabs.loading - # Tab colors for tabs that are loading in the background. - - ## ui.colors.mono.tabs.loading.text - # Default text color. - set ui.colors.mono.tabs.loading.text = "gray" - - ## ui.colors.mono.tabs.loading.background - # Default background color. - set ui.colors.mono.tabs.loading.background = "white" - - - ## ui.colors.mono.tabs.selected - # Selected tab colors. - - ## ui.colors.mono.tabs.selected.text - # Default text color. - set ui.colors.mono.tabs.selected.text = "gray" - - ## ui.colors.mono.tabs.selected.background - # Default background color. - set ui.colors.mono.tabs.selected.background = "black" - - - ## ui.colors.mono.tabs.separator - # Tab separator colors. - - ## ui.colors.mono.tabs.separator.text - # Default text color. - set ui.colors.mono.tabs.separator.text = "gray" - - ## ui.colors.mono.tabs.separator.background - # Default background color. - set ui.colors.mono.tabs.separator.background = "white" - - - - ## ui.colors.mono.searched - # Searched string highlight colors. - - ## ui.colors.mono.searched.text - # Default text color. - set ui.colors.mono.searched.text = "black" - - ## ui.colors.mono.searched.background - # Default background color. - set ui.colors.mono.searched.background = "white" - - - - - ## ui.dialogs - # Dialogs-specific appearance and behaviour settings. - - ## ui.dialogs.listbox_min_height - # Minimal height of the listbox widget (used e.g. for bookmarks - # or global history). - set ui.dialogs.listbox_min_height = 10 - - ## ui.dialogs.shadows [0|1] - # Make dialogs drop shadows (the shadows are solid, you can - # adjust their color by ui.colors.*.dialog.shadow). You may - # also want to eliminate the wide borders by adjusting setup.h. - set ui.dialogs.shadows = 0 - - ## ui.dialogs.underline_hotkeys [0|1] - # Whether to underline hotkeys in menus to make them more - # visible. Requires the underlining is enabled for the terminal. - set ui.dialogs.underline_hotkeys = 0 - - ## ui.dialogs.underline_button_shortcuts [0|1] - # Whether to underline button shortcuts to make them more - # visible. Requires the underlining is enabled for the terminal. - set ui.dialogs.underline_button_shortcuts = 0 - - - ## ui.leds - # LEDs (visual indicators) options. - - ## ui.leds.enable [0|1] - # Enable LEDs. - # These visual indicators will inform you about various states. - set ui.leds.enable = 1 - - - ## ui.sessions - # Sessions settings. - - ## ui.sessions.auto_restore [0|1] - # Automatically restore the session at start. - # This feature requires bookmark support. - set ui.sessions.auto_restore = 0 - - ## ui.sessions.auto_save [0|1] - # Automatically save the session when quitting. - # This feature requires bookmark support. - set ui.sessions.auto_save = 0 - - ## ui.sessions.auto_save_foldername - # Name of the bookmarks folder used for auto saving and restoring session. - # The name has to be unique. Any folders with the same name will be - # deleted. - # This only makes sense with bookmark support. - set ui.sessions.auto_save_foldername = "Auto saved session" - - ## ui.sessions.homepage - # The URI to load either at startup time when no URI was given - # on the command line or when requested by the goto-url-home action. - # Set to "" if the environment variable WWW_HOME should be used - # as homepage URI instead. - set ui.sessions.homepage = "" - - ## ui.sessions.snapshot [0|1] - # Automatically save a snapshot of all tabs periodically. - # This will periodically bookmark the tabs of each terminal in a separate - # folder - # for recovery after a crash. - # - # This feature requires bookmark support. - set ui.sessions.snapshot = 0 - - - ## ui.tabs - # Window tabs settings. - - ## ui.tabs.show_bar - # Show tabs bar on the screen: - # 0 means never - # 1 means only if two or more tabs are open - # 2 means always - set ui.tabs.show_bar = 1 - - ## ui.tabs.wraparound [0|1] - # When moving right from the last tab, jump at the first one, and - # vice versa. - set ui.tabs.wraparound = 1 - - ## ui.tabs.confirm_close [0|1] - # When closing a tab show confirmation dialog. - set ui.tabs.confirm_close = 0 - - - ## ui.timer - # Timed action after certain interval of user inactivity. Someone can - # even find this useful, although you may not believe that. - - ## ui.timer.enable - # Whether to enable the timer or not: - # 0 is don't count down anything - # 1 is count down, but don't show the timer - # 2 is count down and show the timer near LEDs - set ui.timer.enable = 0 - - ## ui.timer.duration - # Inactivity timeout in seconds. The maximum of one day - # should be enough for just everyone (TM). - set ui.timer.duration = 86400 - - ## ui.timer.action - # Keybinding action to be triggered when timer reaches zero. - set ui.timer.action = "" - - - ## ui.date_format - # Date format to use in dialogs. See strftime(3). - set ui.date_format = "%b %e %H:%M" - - ## ui.language - # Language of user interface. 'System' means that the language will - # be extracted from the environment dynamically. - set ui.language = "System" - - ## ui.show_status_bar [0|1] - # Show status bar on the screen. - set ui.show_status_bar = 1 - - ## ui.show_title_bar [0|1] - # Show title bar on the screen. - set ui.show_title_bar = 1 - - ## ui.startup_goto_dialog [0|1] - # Pop up goto dialog in newly created tabs when there's no homepage - # set. This means also showing goto dialog on startup. - set ui.startup_goto_dialog = 1 - - ## ui.success_msgbox [0|1] - # When you pressed a [ Save ] button in some manager, this option - # will make sure that a box confirming success of the operation will - # pop up. - set ui.success_msgbox = 1 - - ## ui.window_title [0|1] - # Set the window title when running in a windowing environment - # in an xterm-like terminal. This way the document's title is - # shown on the window titlebar. - set ui.window_title = 1 - - diff --git a/contrib/proxy/Makefile b/contrib/proxy/Makefile new file mode 100644 index 00000000..5f98e69c --- /dev/null +++ b/contrib/proxy/Makefile @@ -0,0 +1,5 @@ +all: /tmp/log gen + ./gen + +gen: gen.c + $(CC) -g -o $@ $< diff --git a/contrib/proxy/README b/contrib/proxy/README new file mode 100644 index 00000000..af61aa65 --- /dev/null +++ b/contrib/proxy/README @@ -0,0 +1,29 @@ +This program generate proxy.py - a tool for developers to find bugs offline. +How to use it: +1) make the change in src/network/socket.c and recompile the ELinks +/* To enable logging of tranfers, for debugging purposes. */ +#if 0 +^^^^^ +set this to 1 + +2) set connection.max_connections = 1 + set connection.max_connections_to_host = 1 + +3) run the ELinks and gather data. + +4) revert "#if 1 change" and recompile ELinks. + +5) run make in directory with this file. The proxy.py should be generated +and some files with .txt extension. + +6) run proxy.py + +7) run ELinks and set protocol.http.proxy = localhost:8000 + +8) repeat previous session, go to the same pages, etc. + +If you want to use https use browser scripting to replace +'https' with 'http' in follow_url. + +Enjoy, +Witek diff --git a/contrib/proxy/gen.c b/contrib/proxy/gen.c new file mode 100644 index 00000000..1190079b --- /dev/null +++ b/contrib/proxy/gen.c @@ -0,0 +1,177 @@ +#include +#include +#include +#include +#include + +struct stat st; +char *file = "/tmp/log"; +unsigned char *data; +int counter = 0; + +struct { + unsigned char *string; + unsigned char *host; + unsigned char *data; + int length; +} tab[100000]; /* should be enough */ + +unsigned char header[] = +"#!/usr/bin/env python\n" +"import BaseHTTPServer\n\n"; + +unsigned char footer[] = +"class Serwer(BaseHTTPServer.BaseHTTPRequestHandler):\n" +"\tdef do_GET(self):\n" +"\t\tglobal slownik\n" +"\t\tof = open(slownik[self.path])\n" +"\t\tprint (self.path)\n" +"\t\tself.wfile.write(of.read())\n" +"\t\tof.close()\n\n" +"\tdef do_POST(self):\n" +"\t\tself.do_GET()\n\n" +"def run(server_class = BaseHTTPServer.HTTPServer, handler_class = Serwer):\n" +"\tserver_address = ('', 8000)\n" +"\thttpd = server_class(server_address, handler_class)\n" +"\thttpd.serve_forever()\n\n" +"run()\n"; + +static unsigned char * +find(unsigned char *from, unsigned char *key) +{ + unsigned char *end = data + st.st_size; + unsigned char *beg; + int l = strlen(key); + + for (beg = from;; beg++) { + beg = memchr(beg, key[0], end - beg); + if (!beg) + break; + if (!strncmp(beg, key, l)) + break; + } + return beg; +} + +static void +parse(void) +{ + unsigned char *current = data; + + while (1) { + unsigned char *conn = find(current, "CONNECTION:"); + unsigned char *get = find(current, "GET /"); + unsigned char *post = find(current, "POST /"); + unsigned char *host, *space, *http; + size_t enter; + + if (counter) { + unsigned char *min = data + st.st_size; + + if (conn) + min = conn; + if (get && get < min) + min = get; + if (post && post < min) + min = post; + tab[counter - 1].length = min - http; + } + if (get && post) { + if (get < post) { + current = get + 4; + } else { + current = post + 5; + } + } else { + if (get) { + current = get + 4; + } else if (post) { + current = post + 5; + } else { + return; + } + } + + space = strchr(current, ' '); + if (!space) + return; + + host = find(space + 1, "Host: "); + if (!host) + return; + + *space = '\0'; + tab[counter].string = current; + host += 6; + enter = strcspn(host, "\r\n\0"); + host[enter] = '\0'; + tab[counter].host = host; + + http = find(host + enter + 1, "HTTP/"); + if (!http) + return; + tab[counter++].data = http; + } +} + +static void +dicts(FILE *f) +{ + int i; + + fprintf(f, "slownik = {\n"); + for (i = 0; i < counter - 1; i++) { + fprintf(f, "\t'http://%s%s' : '%d.txt',\n", tab[i].host, tab[i].string, i); + } + for (; i < counter; i++) { + fprintf(f, "\t'http://%s%s' : '%d.txt'\n", tab[i].host, tab[i].string, i); + } + fprintf(f, "}\n\n"); +} + +static void +save(void) +{ + int i; + FILE *f; + + for (i = 0; i < counter; i++) { + char buf[12]; + + snprintf(buf, 12, "%d.txt", i); + f = fopen(buf, "w"); + if (!f) + return; + fwrite(tab[i].data, 1, tab[i].length, f); + fclose(f); + } + f = fopen("proxy.py", "w"); + if (!f) + return; + fprintf(f, "%s", header); + dicts(f); + fprintf(f, "%s", footer); + fclose(f); +} + +int +main(int argc, char **argv) +{ + FILE *f; + + if (argc > 1) + file = argv[1]; + f = fopen(file, "r"); + if (!f) + return 1; + stat(file, &st); + data = calloc(1, st.st_size + 1); + if (!data) + return 2; + fread(data, 1, st.st_size, f); + fclose(f); + + parse(); + save(); + return 0; +} diff --git a/contrib/smjs/smartprefixes_classic.js b/contrib/smjs/smartprefixes_classic.js index da1234d7..848bcd86 100644 --- a/contrib/smjs/smartprefixes_classic.js +++ b/contrib/smjs/smartprefixes_classic.js @@ -15,7 +15,7 @@ var smartprefixes = { // If you want to add a smartprefix for another project's CVSweb, // just create a lambda like this. Aren't high-level languages fun? cvs: function (x) { return cvsweb ("http://cvsweb.elinks.cz/cvsweb.cgi/", "elinks", x) }, - gitweb: function (x) { return gitweb("http://pasky.or.cz/gitweb.cgi", "elinks.git", x) }, + gitweb: function (x) { return gitweb("http://repo.or.cz/gitweb.cgi", "elinks.git", x) }, d: "http://www.dict.org/bin/Dict?Query=%s&Form=Dict1&Strategy=*&Database=*&submit=Submit+query", debcontents: debian_contents, debfile: debian_file, diff --git a/contrib/smjs/smartprefixes_common.js b/contrib/smjs/smartprefixes_common.js index e894794c..aaebfa4f 100644 --- a/contrib/smjs/smartprefixes_common.js +++ b/contrib/smjs/smartprefixes_common.js @@ -55,7 +55,7 @@ function cvsweb (base, project, url) return base + project + "/" + file } -/* javascript:gitweb("http://pasky.or.cz/gitweb.cgi", "elinks.git", "%s"); */ +/* javascript:gitweb("http://repo.or.cz/gitweb.cgi", "elinks.git", "%s"); */ function gitweb(base, project, url) { var parts = url.match(/^(search|summary|shortlog|log|blob|commit|commitdiff|history|tree|tag)(\s(.*))?/); diff --git a/doc/Makefile b/doc/Makefile index eb6980fd..c1943aca 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -165,24 +165,11 @@ asciidoc_dep = sed -n 's/[{]builddir}//g;s@include::\(.*\)\[.*@$@: $< \1@p' < $< -include .deps/*.asciidoc # Do a little post-processing of man pages. Inserting title headers and date. -# - Change SYNOPSIS to OVERVIEW in elinkskeys.5 (but not in elinks.1). -# SYNOPSIS isn't supposed to contain running text. But AsciiDoc -# 7.1.2 complains "ERROR: elinkskeys.5.txt: line 10: second section -# must be named SYNOPSIS" so we can't change this in elinkskeys.5.txt. -# - Write backslash as "\e" not "\\", but be careful not to replace -# double-backslashes that actually mean something else. This is -# apparently a bug in db2man, which xmlto runs. -# Run all the hacks together in one sed command so that we get the right -# exit code if there is an error somewhere in the middle. MAN_DATE = $(shell date -I) man_desc = `sed -n 's/:Description:\s*\(.*\)/\1/p' < $(srcdir)$(subst .xml,.txt,$( $@.tmp \ - && mv $@.tmp $@ +man_hack = sed "s/^\(\.TH \"ELINKS[^\"]*\" [0-9] \).*/\1\"$(1)\" \"$(MAN_DATE)\" \"$(1)\"/" < $@ | \ + sed "s/@squote@/\\\\'/g" > $@.tmp && mv $@.tmp $@ + ############################################################################# # Build recipies diff --git a/doc/installation.txt b/doc/installation.txt index efabb144..95c7da03 100644 --- a/doc/installation.txt +++ b/doc/installation.txt @@ -41,7 +41,7 @@ ifndef::installation-webpage[] See <> \ endif::installation-webpage[] for more info. -GNU zip For handling compressed documents both locally and \ +zlib 1.2.0.2 or later For handling compressed documents both locally and \ sent from server. bzip2 For handling local compressed documents. OpenSSL or GNU TLS For handling secure HTTP browsing. diff --git a/doc/man/man5/elinks.conf.5 b/doc/man/man5/elinks.conf.5 index f03f40f4..bc5eae3c 100644 --- a/doc/man/man5/elinks.conf.5 +++ b/doc/man/man5/elinks.conf.5 @@ -17,7 +17,7 @@ .el .ne 3 .IP "\\$1" \\$2 .. -.TH "ELINKS.CONF" 5 "ELinks configuration file" "2007-01-06" "ELinks configuration file" +.TH "ELINKS.CONF" 5 "ELinks configuration file" "2007-06-21" "ELinks configuration file" .SH NAME elinks.conf \- ELinks configuration file .SH "SYNOPSIS" @@ -636,7 +636,7 @@ Ignore Cache\-Control and Pragma server headers\&. When set, the document is cac .TP document\&.cache\&.revalidation_interval (default: \-1) -Period 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\&. .TP document\&.codepage @@ -1378,7 +1378,7 @@ Replacement URI for this smartprefix: %c in the string means the current URL %s .TP protocol\&.rewrite\&.default_template (default: "") -Default URI template used when the string entered in the goto dialog does not appear to be a URI or a filename (i\&.e\&. contains no '\&.', \fI:\fR or \fI/\fR characters), and does not match any defined prefixes\&. Set the value to "" to disable use of the default template rewrite rule\&. +Default URI template used when the string entered in the goto dialog does not appear to be a URI or a filename (i\&.e\&. contains no '\&.', \fI:\fR or \fI/\fR characters), and does not match any defined prefixes\&. Set the value to "" to disable use of the default template rewrite rule\&. %c in the template means the current URL %s in the template means the whole string from the goto dialog %0,%1,...,%9 mean the 1st,2nd,...,10th space\-delimited part of %s %% in the template means '%' .TP protocol\&.rewrite\&.enable\-dumb [0|1] (default: 1) @@ -1438,7 +1438,7 @@ Terminal type; matters mostly only when drawing frames and dialog box borders: .TP terminal\&._template_\&.m11_hack [0|1] (default: 0) -Switch fonts when drawing lines, enabling both local characters and lines working at the same time\&. Makes sense only with linux terminal\&. +Switch fonts when drawing lines, enabling both local characters and lines working at the same time\&. \fIELinks\fR uses this option only if UTF\-8 I/O is disabled and the terminal type is Linux or FreeBSD\&. .TP terminal\&._template_\&.utf_8_io [0|1] (default: 0) diff --git a/doc/man/man5/elinkskeys.5 b/doc/man/man5/elinkskeys.5 index 3ed21512..7f03b95a 100644 --- a/doc/man/man5/elinkskeys.5 +++ b/doc/man/man5/elinkskeys.5 @@ -17,10 +17,10 @@ .el .ne 3 .IP "\\$1" \\$2 .. -.TH "ELINKSKEYS" 5 "ELinks keybindings" "2007-01-06" "ELinks keybindings" +.TH "ELINKSKEYS" 5 "ELinks keybindings" "2007-06-21" "ELinks keybindings" .SH NAME elinkskeys \- keybindings for ELinks -.SH "OVERVIEW" +.SH "SYNOPSIS" Information on how to configure keybinding and overview of the default keybindings\&. @@ -46,7 +46,7 @@ is \fImain\fR, \fIedit\fR, or \fImenu\fR\&. The main keymap is used for general .TP -is a case sensitive key, which you can prefix with \fICtrl\-\fR or \fIAlt\-\fR\&. \fICtrl\-\fR must be followed by an uppercase key\&. See below for a list of valid keys\&. +is a case sensitive key, which you can prefix with \fICtrl\-\fR, \fIAlt\-\fR, or both\&. \fICtrl\-\fR must be followed by an uppercase key\&. See below for a list of valid keys\&. .TP @@ -87,7 +87,7 @@ bind "main" "," = "lua\-console" Valid keys are: alphanumeric characters, punctuation, \fIEnter\fR, \fIBackspace\fR, \fITab\fR, \fIEscape\fR, \fILeft\fR, \fIRight\fR, \fIUp\fR, \fIDown\fR, \fIInsert\fR, \fIDelete\fR, \fIHome\fR, \fIEnd\fR, \fIPageUp\fR, \fIPageDown\fR, \fIF1\fR to \fIF12\fR\&. -Some keys will need to be quoted or escaped\&. For example, space can be written as " " (quote space quote), and the quote itself as \\" (backslash quote)\&. Backslash can be written as \e\e (double backslash)\&. +Some keys will need to be quoted or escaped\&. For example, space can be written as " " (quote space quote), and the quote itself as \\" (backslash quote)\&. Backslash can be written as \\\\ (double backslash)\&. .SH "KEYMAP ACTIONS" @@ -573,7 +573,7 @@ Copy text to clipboard\&. .TP cut\-clipboard -Delete text from clipboard\&. +Cut text to clipboard\&. .TP delete @@ -893,7 +893,7 @@ Scroll left (\fIscroll\-left\fR) Go at a specified mark (\fImark\-goto\fR) .TP -\fI\e\fR +\fI\\\fR Toggle rendering page as HTML / plain text (\fItoggle\-html\-plain\fR) .TP @@ -1152,7 +1152,7 @@ Attempt to auto\-complete the input (\fIauto\-complete\fR) .TP \fICtrl\-X\fR -Delete text from clipboard (\fIcut\-clipboard\fR) +Cut text to clipboard (\fIcut\-clipboard\fR) .TP \fIAlt\-Backspace\fR diff --git a/doc/release.txt b/doc/release.txt index 9530b085..b0806caf 100644 --- a/doc/release.txt +++ b/doc/release.txt @@ -10,6 +10,8 @@ When releasing a new version Write a small changelog highlighting the most important changes. Changes by new contributors are always important! - Update NEWS file and commit. Remember to add the new version number! + Don't add the release date yet though; it will be added after the release, + from the date in the mailing list archives. - Change VERSION in the top of configure.in to hold the new version number. - Commit only this change. - Create a signed tag having the version ("ELinks X.X.X") as the subject and diff --git a/features.conf b/features.conf index fcdfe511..ad253c54 100644 --- a/features.conf +++ b/features.conf @@ -625,12 +625,12 @@ CONFIG_SMALL=no # Some features are partially supported. Like line breaking between # double-width characters. There is no other detection for determining when to # break or not. +# Character conversions are still incomplete for ECMAScript strings (bug 805), +# local file names, and IRIs (RFC 3987). # -# Note: This UTF-8 support is experimental. -# -# Default: disabled +# Default: enabled -CONFIG_UTF8=no +CONFIG_UTF8=yes diff --git a/po/README b/po/README index 0db65c61..88688f12 100644 --- a/po/README +++ b/po/README @@ -74,7 +74,18 @@ name of your language (in English) so you end up with something like: {NULL, NULL}, }; -1.2 Making the new language file part of ELinks: +1.2 Testing your changes without installing ELinks: +--------------------------------------------------- + +It is possible to test translation updates without installing ELinks. After +building both ELinks and the po files, simply start ELinks from the top-level +directory in the source tree using: + + $ ./src/elinks + +It will then load po files from the po/ directory in the source tree. + +1.3 Making the new language file part of ELinks: ------------------------------------------------ Finally to make it part of the ELinks distribution send it to one of the @@ -340,7 +351,7 @@ mark (e.g. "~/.elinks") and the translated msgstr do not. If the language file is already added finally run make to compile and check the language file for errors and fix any warnings you get. Then patch your changes and send it to one of the mailinglists or file it as a bug at -. +. 3. Statistics: diff --git a/po/fr.po b/po/fr.po index 8f499858..33959468 100644 --- a/po/fr.po +++ b/po/fr.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: ELinks 0.13.GIT\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-04-27 15:03+0200\n" -"PO-Revision-Date: 2007-04-27 15:05+0200\n" +"POT-Creation-Date: 2007-05-28 14:23+0200\n" +"PO-Revision-Date: 2007-05-28 14:25+0200\n" "Last-Translator: Laurent Monin \n" "Language-Team: French \n" "MIME-Version: 1.0\n" @@ -192,8 +192,8 @@ msgstr "Horloge" msgid "Digital clock in the status bar." msgstr "Horloge digitale dans la barre de status." -#: src/bfu/leds.c:77 src/bfu/leds.c:94 src/config/options.inc:1178 -#: src/config/options.inc:1185 src/ecmascript/ecmascript.c:45 +#: src/bfu/leds.c:77 src/bfu/leds.c:94 src/config/options.inc:1199 +#: src/config/options.inc:1206 src/ecmascript/ecmascript.c:45 #: src/globhist/globhist.c:64 src/mime/backend/mailcap.c:93 #: src/mime/backend/mimetypes.c:52 src/network/ssl/ssl.c:80 msgid "Enable" @@ -369,7 +369,7 @@ msgstr "" "\n" "Cette fonctionnalité requiert le support des signets." -#: src/bookmarks/dialogs.c:72 src/config/options.inc:1030 +#: src/bookmarks/dialogs.c:72 src/config/options.inc:1051 #: src/dialogs/document.c:145 src/globhist/dialogs.c:65 msgid "Title" msgstr "Titre" @@ -1825,8 +1825,29 @@ msgstr "modifi msgid "(expand by pressing space)" msgstr "(déployer en pressant espace)" +#. TODO: Incorporate some of the following to the option text. +#. * +#. * When UTF-8 I/O is disabled: +#. * 0 (TERM_DUMB) outputs ASCII -+| characters. +#. * 1 (TERM_VT100) switches charsets with ^N and ^O. +#. * 2 (TERM_LINUX) outputs CP437 characters without switching +#. * charsets, so it works correctly only if the terminal uses +#. * CP437. Can also be made CP850 and CP852 compatible with +#. * the restrict_852 option. +#. * 3 (TERM_KOI8) outputs KOI8-R characters without switching +#. * charsets, so it works correctly only if the terminal uses +#. * KOI8-R and the user has selected either KOI8-R or ASCII +#. * in ELinks. It is also mostly compatible with KOI8-U. +#. * 4 (TERM_FREEBSD) outputs characters in the 0x80...0x9F +#. * range, which FreeBSD 4.0 (but not 5.0) treated as +#. * graphical. +#. * +#. * When UTF-8 I/O is enabled, ELinks outputs (almost) the same +#. * characters as above but encodes them in UTF-8 and does not +#. * switch charsets. So, it will work in any terminal that +#. * understands UTF-8 and has the characters in its font. #: src/config/dialogs.c:149 src/config/dialogs.c:330 -#: src/config/options.inc:819 +#: src/config/options.inc:840 msgid "Type" msgstr "Type" @@ -1908,7 +1929,7 @@ msgstr "Gestionnaire d'options" msgid "Keystroke" msgstr "Touches" -#: src/config/dialogs.c:676 src/config/options.inc:1198 +#: src/config/dialogs.c:676 src/config/options.inc:1219 msgid "Action" msgstr "Action" @@ -2541,12 +2562,12 @@ msgid "Active link colors." msgstr "Couleurs du lien actif." #: src/config/options.inc:274 src/config/options.inc:549 -#: src/config/options.inc:924 +#: src/config/options.inc:945 msgid "Background color" msgstr "Couleur du fond" #: src/config/options.inc:276 src/config/options.inc:551 -#: src/config/options.inc:925 +#: src/config/options.inc:946 msgid "Default background color." msgstr "Couleur par défaut du fond." @@ -2559,12 +2580,12 @@ msgstr "Couleur par d #. The colors and mono tree should be similar but with different default #. * values of course so always use the macros below. #: src/config/options.inc:278 src/config/options.inc:545 -#: src/config/options.inc:922 +#: src/config/options.inc:943 msgid "Text color" msgstr "Couleur du texte" #: src/config/options.inc:280 src/config/options.inc:547 -#: src/config/options.inc:923 +#: src/config/options.inc:944 msgid "Default text color." msgstr "Couleur du texte par défaut." @@ -2598,7 +2619,7 @@ msgid "Invert the fore- and background color so the link stands out." msgstr "" "Inverser les couleurs de fond et de texte pour mettre le lien en évidence." -#: src/config/options.inc:296 src/config/options.inc:887 +#: src/config/options.inc:296 src/config/options.inc:908 #: src/dialogs/options.c:231 msgid "Underline" msgstr "Souligné" @@ -3256,8 +3277,8 @@ msgstr "Sortie (-dump)" msgid "Dump output options." msgstr "Options de sortie (-dump)." -#: src/config/options.inc:640 src/config/options.inc:891 -#: src/config/opttypes.c:408 src/dialogs/document.c:163 +#: src/config/options.inc:640 src/config/options.inc:912 +#: src/config/opttypes.c:404 src/dialogs/document.c:163 msgid "Codepage" msgstr "Jeu de caractères" @@ -3270,7 +3291,7 @@ msgstr "" "'System' indique que celui-ci sera déterminé par la locale\n" "en cours." -#: src/config/options.inc:645 src/config/options.inc:857 +#: src/config/options.inc:645 src/config/options.inc:878 msgid "Color mode" msgstr "Mode couleurs" @@ -3606,7 +3627,7 @@ msgstr "" "Options spécifiques à ce type de terminal (conformément à la valeur de " "$TERM)." -#: src/config/options.inc:821 +#: src/config/options.inc:842 msgid "" "Terminal type; matters mostly only when drawing frames and\n" "dialog box borders:\n" @@ -3623,29 +3644,31 @@ msgstr "" "3 KOI-8\n" "4 FreeBSD" -#: src/config/options.inc:829 src/dialogs/options.c:227 +#: src/config/options.inc:850 src/dialogs/options.c:227 msgid "Switch fonts for line drawing" msgstr "Echanger les fontes pour dessiner les lignes" -#: src/config/options.inc:831 +#: src/config/options.inc:852 msgid "" "Switch fonts when drawing lines, enabling both local characters\n" -"and lines working at the same time. Makes sense only with linux\n" -"terminal." +"and lines working at the same time. ELinks uses this option only if\n" +"UTF-8 I/O is disabled and the terminal type is Linux or FreeBSD." msgstr "" -"Echanger les fontes de caractères pour le dessin des lignes, seulement\n" -"intéressant avec le terminal de type linux." +"Echanger les fontes de caractères lors du dessin des lignes, permettant\n" +"aux caractères locaux et aux lignes de coexister. ELinks utilise cette\n" +"option seulement si l'option E/S UTF-8 est inactive et le type de\n" +"terminal est Linux ou FreeBSD." #. When CONFIG_UTF8 is defined, any code that reads the "utf_8_io" #. * option should also check whether the "codepage" option is UTF-8, #. * and if so, behave as if "utf_8_io" were 1. (When CONFIG_UTF8 is #. * not defined, it should not be possible to set UTF-8 as "codepage"; #. * please report any such possibilities as bugs.) -#: src/config/options.inc:840 src/dialogs/options.c:232 +#: src/config/options.inc:861 src/dialogs/options.c:232 msgid "UTF-8 I/O" msgstr "E/S UTF-8" -#: src/config/options.inc:842 +#: src/config/options.inc:863 msgid "" "Enable I/O in UTF-8 for Unicode terminals. Note that currently,\n" "only the subset of UTF-8 according to terminal codepage is used.\n" @@ -3656,11 +3679,11 @@ msgstr "" "avec l'encodage de caractères du terminal. ELinks ignore cette\n" "option si l'encodage de caractères utilisé par le terminal est UTF-8." -#: src/config/options.inc:846 src/dialogs/options.c:228 +#: src/config/options.inc:867 src/dialogs/options.c:228 msgid "Restrict frames in cp850/852" msgstr "Limiter les cadres dans cp850/852" -#: src/config/options.inc:848 +#: src/config/options.inc:869 msgid "" "Restrict the characters used when drawing lines. Makes sense\n" "only with linux terminals using the cp850/852 character sets." @@ -3669,11 +3692,11 @@ msgstr "" "N'a du sens que pour les terminaux linux utilisant les jeux de\n" "caractères cp850/852." -#: src/config/options.inc:851 src/dialogs/options.c:229 +#: src/config/options.inc:872 src/dialogs/options.c:229 msgid "Block cursor" msgstr "Bloquer le curseur" -#: src/config/options.inc:853 +#: src/config/options.inc:874 msgid "" "Move cursor to bottom right corner when done drawing.\n" "This is particularly useful when we have a block cursor,\n" @@ -3689,7 +3712,7 @@ msgstr "" #. * an outer list entry after an inner list. #. * TRANSLATORS: This restriction applies only to the #. * "en" (English) translation. (See doc/Makefile.) -#: src/config/options.inc:864 +#: src/config/options.inc:885 msgid "" "The color mode controls what colors are used and how they are output to the " "terminal.\n" @@ -3716,11 +3739,11 @@ msgstr "" "3 mode 256 couleurs, utilise les codes RVB d'XTerm\n" "4 mode vraies couleurs, utilise les codes RVB de konsole" -#: src/config/options.inc:877 src/dialogs/options.c:230 +#: src/config/options.inc:898 src/dialogs/options.c:230 msgid "Transparency" msgstr "Transparence" -#: src/config/options.inc:879 +#: src/config/options.inc:900 msgid "" "If we should not set the background to black. This is particularly\n" "useful when we have a terminal (typically in some windowing\n" @@ -3738,11 +3761,11 @@ msgstr "" "un fond clair vous rencontrerez des problèmes de contraste).\n" "Cette option n'a de sens que quand les couleurs sont activées." -#: src/config/options.inc:889 +#: src/config/options.inc:910 msgid "If we should use underline or enhance the color instead." msgstr "Si nous devons utiliser le souligné ou modifier la couleur." -#: src/config/options.inc:893 +#: src/config/options.inc:914 msgid "" "Codepage of charset used for displaying content on terminal.\n" "'System' stands for a codepage determined by a selected locale." @@ -3752,374 +3775,374 @@ msgstr "" "sélectionnée." #. Keep options in alphabetical order. -#: src/config/options.inc:900 +#: src/config/options.inc:921 msgid "User interface" msgstr "Interface utilisateur" -#: src/config/options.inc:902 +#: src/config/options.inc:923 msgid "User interface options." msgstr "Options de l'interface utilisateur." -#: src/config/options.inc:906 +#: src/config/options.inc:927 msgid "Color settings" msgstr "Configuration des couleurs" -#: src/config/options.inc:908 +#: src/config/options.inc:929 msgid "Default user interface color settings." msgstr "Configuration des couleurs de l'interface utilisateur." -#: src/config/options.inc:935 +#: src/config/options.inc:956 msgid "Color terminals" msgstr "Terminaux couleur" -#: src/config/options.inc:937 +#: src/config/options.inc:958 msgid "Color settings for color terminal." msgstr "Configuration des couleurs des terminaux couleur." -#: src/config/options.inc:939 +#: src/config/options.inc:960 msgid "Non-color terminals" msgstr "Terminaux monochromes" -#: src/config/options.inc:941 +#: src/config/options.inc:962 msgid "Color settings for non-color terminal." msgstr "Configuration des couleurs pour les terminaux monochromes." #. FIXME: obsolete, how to alias them correctly ? --Zas -#: src/config/options.inc:944 +#: src/config/options.inc:965 msgid "Main menu bar" msgstr "Barre du menu principal" -#: src/config/options.inc:946 +#: src/config/options.inc:967 msgid "Main menu bar colors." msgstr "Couleurs de la barre du menu principal." -#: src/config/options.inc:948 +#: src/config/options.inc:969 msgid "Unselected main menu bar item" msgstr "Item non sélectionné de la barre de menu" -#: src/config/options.inc:950 +#: src/config/options.inc:971 msgid "Unselected main menu bar item colors." msgstr "Couleurs des items non sélectionnés de la barre de menu." -#: src/config/options.inc:952 +#: src/config/options.inc:973 msgid "Selected main menu bar item" msgstr "Item sélectionné de la barre de menu" -#: src/config/options.inc:954 +#: src/config/options.inc:975 msgid "Selected main menu bar item colors." msgstr "Couleurs de l'item sélectionné de la barre de menu." -#: src/config/options.inc:956 src/config/options.inc:985 +#: src/config/options.inc:977 src/config/options.inc:1006 msgid "Hotkey" msgstr "Raccourci clavier" -#: src/config/options.inc:958 +#: src/config/options.inc:979 msgid "Main menu hotkey colors." msgstr "Couleurs des raccourcis de la barre du menu principal." -#: src/config/options.inc:960 src/config/options.inc:989 +#: src/config/options.inc:981 src/config/options.inc:1010 msgid "Unselected hotkey" msgstr "Raccourci non sélectionné" -#: src/config/options.inc:962 +#: src/config/options.inc:983 msgid "Main menu unselected hotkey colors." msgstr "Couleurs des raccourcis non sélectionnés du menu principal." -#: src/config/options.inc:964 src/config/options.inc:993 +#: src/config/options.inc:985 src/config/options.inc:1014 msgid "Selected hotkey" msgstr "Raccourci sélectionné" -#: src/config/options.inc:966 +#: src/config/options.inc:987 msgid "Main menu selected hotkey colors." msgstr "Couleurs des raccourcis sélectionnés du menu principal." -#: src/config/options.inc:969 +#: src/config/options.inc:990 msgid "Menu bar" msgstr "Barre de menu" -#: src/config/options.inc:971 +#: src/config/options.inc:992 msgid "Menu bar colors." msgstr "Couleurs de la barre de menu." -#: src/config/options.inc:973 +#: src/config/options.inc:994 msgid "Unselected menu item" msgstr "Item non sélectionné du menu" -#: src/config/options.inc:975 +#: src/config/options.inc:996 msgid "Unselected menu item colors." msgstr "Couleurs des items non sélectionnés du menu." -#: src/config/options.inc:977 +#: src/config/options.inc:998 msgid "Selected menu item" msgstr "Item sélectionné du menu" -#: src/config/options.inc:979 +#: src/config/options.inc:1000 msgid "Selected menu item colors." msgstr "Couleurs de l'item sélectionnés du menu." -#: src/config/options.inc:981 +#: src/config/options.inc:1002 msgid "Marked menu item" msgstr "Item de menu marqué" -#: src/config/options.inc:983 +#: src/config/options.inc:1004 msgid "Marked menu item colors." msgstr "Couleurs de l'item du menu marqué." -#: src/config/options.inc:987 +#: src/config/options.inc:1008 msgid "Menu item hotkey colors." msgstr "Couleurs des raccourcis dans les menus." -#: src/config/options.inc:991 +#: src/config/options.inc:1012 msgid "Menu item unselected hotkey colors." msgstr "Couleurs des raccourcis non sélectionnés dans les menus." -#: src/config/options.inc:995 +#: src/config/options.inc:1016 msgid "Menu item selected hotkey colors." msgstr "Couleurs des raccourcis sélectionnés dans les menus." -#: src/config/options.inc:997 +#: src/config/options.inc:1018 msgid "Menu frame" msgstr "Bordure du menu" -#: src/config/options.inc:999 +#: src/config/options.inc:1020 msgid "Menu frame colors." msgstr "Couleurs de la bordure du menu." -#: src/config/options.inc:1002 +#: src/config/options.inc:1023 msgid "Dialog" msgstr "Dialogue" -#: src/config/options.inc:1004 +#: src/config/options.inc:1025 msgid "Dialog colors." msgstr "Couleurs des dialogues." -#: src/config/options.inc:1014 +#: src/config/options.inc:1035 msgid "Generic" msgstr "Générique" -#: src/config/options.inc:1016 +#: src/config/options.inc:1037 msgid "Generic dialog colors." msgstr "Couleurs des dialogues génériques." -#: src/config/options.inc:1018 +#: src/config/options.inc:1039 msgid "Frame" msgstr "Bordure" -#: src/config/options.inc:1020 +#: src/config/options.inc:1041 msgid "Dialog frame colors." msgstr "Couleurs de la bordure des dialogues." -#: src/config/options.inc:1022 +#: src/config/options.inc:1043 msgid "Scrollbar" msgstr "Barre de défilement" -#: src/config/options.inc:1024 +#: src/config/options.inc:1045 msgid "Scrollbar colors." msgstr "Couleurs de la barre de défilement." -#: src/config/options.inc:1026 +#: src/config/options.inc:1047 msgid "Selected scrollbar" msgstr "Barre de défilement sélectionnée" -#: src/config/options.inc:1028 +#: src/config/options.inc:1049 msgid "Scrollbar selected colors." msgstr "Couleurs de la barre de défilement sélectionnée." -#: src/config/options.inc:1032 +#: src/config/options.inc:1053 msgid "Dialog title colors." msgstr "Couleurs du titre des dialogues." -#: src/config/options.inc:1034 +#: src/config/options.inc:1055 msgid "Text" msgstr "Texte" -#: src/config/options.inc:1036 +#: src/config/options.inc:1057 msgid "Dialog text colors." msgstr "Couleurs du texte des dialogues." -#: src/config/options.inc:1038 src/viewer/text/form.c:1802 +#: src/config/options.inc:1059 src/viewer/text/form.c:1809 msgid "Checkbox" msgstr "Case à cocher" -#: src/config/options.inc:1040 +#: src/config/options.inc:1061 msgid "Dialog checkbox colors." msgstr "Couleurs des cases à cocher dans les dialogues." -#: src/config/options.inc:1042 +#: src/config/options.inc:1063 msgid "Selected checkbox" msgstr "Case à cocher sélectionnée" -#: src/config/options.inc:1044 +#: src/config/options.inc:1065 msgid "Dialog selected checkbox colors." msgstr "Couleurs de la case à cocher sélectionnée dans les dialogues." -#: src/config/options.inc:1046 +#: src/config/options.inc:1067 msgid "Checkbox label" msgstr "Label de case à cocher" -#: src/config/options.inc:1048 +#: src/config/options.inc:1069 msgid "Dialog checkbox label colors." msgstr "Couleurs des labels des cases à cocher dans les dialogues." -#: src/config/options.inc:1050 +#: src/config/options.inc:1071 msgid "Button" msgstr "Bouton" -#: src/config/options.inc:1052 src/config/options.inc:1060 +#: src/config/options.inc:1073 src/config/options.inc:1081 msgid "Dialog button colors." msgstr "Couleurs des boutons des dialogues." -#: src/config/options.inc:1054 +#: src/config/options.inc:1075 msgid "Selected button" msgstr "Bouton sélectionné" -#: src/config/options.inc:1056 src/config/options.inc:1064 +#: src/config/options.inc:1077 src/config/options.inc:1085 msgid "Dialog selected button colors." msgstr "Couleurs du bouton sélectionné dans les dialogues." -#: src/config/options.inc:1058 +#: src/config/options.inc:1079 msgid "Button shortcut" msgstr "Raccourci du bouton" -#: src/config/options.inc:1062 +#: src/config/options.inc:1083 msgid "Selected button shortcut" msgstr "Raccourci du bouton sélectionné" -#: src/config/options.inc:1066 src/viewer/text/form.c:1806 +#: src/config/options.inc:1087 src/viewer/text/form.c:1813 msgid "Text field" msgstr "Champ texte" -#: src/config/options.inc:1068 +#: src/config/options.inc:1089 msgid "Dialog text field colors." msgstr "Couleurs des champs texte dans les dialogues." -#: src/config/options.inc:1070 +#: src/config/options.inc:1091 msgid "Text field text" msgstr "Texte des champs texte" -#: src/config/options.inc:1072 +#: src/config/options.inc:1093 msgid "Dialog field text colors." msgstr "Couleurs de texte des champs texte dans les dialogues." -#: src/config/options.inc:1074 +#: src/config/options.inc:1095 msgid "Meter" msgstr "Barre de progression" -#: src/config/options.inc:1076 +#: src/config/options.inc:1097 msgid "Dialog meter colors." msgstr "Couleurs des barres de progression." -#: src/config/options.inc:1078 +#: src/config/options.inc:1099 msgid "Shadow" msgstr "Ombrage" -#: src/config/options.inc:1080 +#: src/config/options.inc:1101 msgid "Dialog shadow colors (see ui.shadows option)." msgstr "Couleurs des ombres des dialogues (voir l'option ui.shadows)." -#: src/config/options.inc:1082 +#: src/config/options.inc:1103 msgid "Title bar" msgstr "Barre de titre" -#: src/config/options.inc:1084 +#: src/config/options.inc:1105 msgid "Title bar colors." msgstr "Couleurs de la barre de titre." -#: src/config/options.inc:1086 +#: src/config/options.inc:1107 msgid "Generic title bar" msgstr "Barre de titre générique" -#: src/config/options.inc:1088 +#: src/config/options.inc:1109 msgid "Generic title bar colors." msgstr "Couleurs de la barre de titre générique." -#: src/config/options.inc:1090 +#: src/config/options.inc:1111 msgid "Title bar text" msgstr "Texte de la barre de titre" -#: src/config/options.inc:1092 +#: src/config/options.inc:1113 msgid "Title bar text colors." msgstr "Couleurs du texte de la barre de titre." -#: src/config/options.inc:1095 +#: src/config/options.inc:1116 msgid "Status bar" msgstr "Barre d'état" -#: src/config/options.inc:1097 +#: src/config/options.inc:1118 msgid "Status bar colors." msgstr "Couleurs de la barre d'état." -#: src/config/options.inc:1099 +#: src/config/options.inc:1120 msgid "Generic status bar" msgstr "Barre d'état générique" -#: src/config/options.inc:1101 +#: src/config/options.inc:1122 msgid "Generic status bar colors." msgstr "Couleurs de la barre d'état générique." -#: src/config/options.inc:1103 +#: src/config/options.inc:1124 msgid "Status bar text" msgstr "Texte de la barre d'état" -#: src/config/options.inc:1105 +#: src/config/options.inc:1126 msgid "Status bar text colors." msgstr "Couleurs du texte de la barre d'état." -#: src/config/options.inc:1108 +#: src/config/options.inc:1129 msgid "Tabs bar" msgstr "Barre d'onglets" -#: src/config/options.inc:1110 +#: src/config/options.inc:1131 msgid "Tabs bar colors." msgstr "Couleurs de la barre d'onglets." -#: src/config/options.inc:1112 +#: src/config/options.inc:1133 msgid "Unvisited tab" msgstr "Onglet non visité" -#: src/config/options.inc:1114 +#: src/config/options.inc:1135 msgid "" "Tab colors for tabs that have not been\n" "selected since they completed loading." msgstr "Couleurs pour les onglets non encore visités depuis leur chargement." -#: src/config/options.inc:1117 +#: src/config/options.inc:1138 msgid "Unselected tab" msgstr "Onglet non sélectionné" -#: src/config/options.inc:1119 +#: src/config/options.inc:1140 msgid "Unselected tab colors." msgstr "Couleurs des onglets non sélectionnés." -#: src/config/options.inc:1121 +#: src/config/options.inc:1142 msgid "Loading tab" msgstr "Onglet en cours de chargement" -#: src/config/options.inc:1123 +#: src/config/options.inc:1144 msgid "Tab colors for tabs that are loading in the background." msgstr "Couleurs pour les onglets en cours de chargement." -#: src/config/options.inc:1125 +#: src/config/options.inc:1146 msgid "Selected tab" msgstr "Onglet sélectionné" -#: src/config/options.inc:1127 +#: src/config/options.inc:1148 msgid "Selected tab colors." msgstr "Couleurs de l'onglet sélectionné." -#: src/config/options.inc:1129 +#: src/config/options.inc:1150 msgid "Tab separator" msgstr "Séparateur d'onglets" -#: src/config/options.inc:1131 +#: src/config/options.inc:1152 msgid "Tab separator colors." msgstr "Couleurs du séparateur d'onglets." -#: src/config/options.inc:1134 +#: src/config/options.inc:1155 msgid "Searched strings" msgstr "Chaînes recherchées" -#: src/config/options.inc:1136 +#: src/config/options.inc:1157 msgid "Searched string highlight colors." msgstr "Couleurs de mise en évidence des chaînes recherchées." @@ -4127,19 +4150,19 @@ msgstr "Couleurs de mise en #. ============= BORING PART (colors) END =================== #. ========================================================== #. Keep options in alphabetical order. -#: src/config/options.inc:1145 +#: src/config/options.inc:1166 msgid "Dialog settings" msgstr "Configuration des dialogues" -#: src/config/options.inc:1147 +#: src/config/options.inc:1168 msgid "Dialogs-specific appearance and behaviour settings." msgstr "Configuration de l'apparence et du fonctionnement des dialogues." -#: src/config/options.inc:1150 +#: src/config/options.inc:1171 msgid "Minimal height of listbox widget" msgstr "Hauteur minimale des boîtes liste" -#: src/config/options.inc:1152 +#: src/config/options.inc:1173 msgid "" "Minimal height of the listbox widget (used e.g. for bookmarks\n" "or global history)." @@ -4147,11 +4170,11 @@ msgstr "" "Hauteur minimale des boîtes liste (utilisée par exemple pour les\n" "signets ou l'historique global)." -#: src/config/options.inc:1155 +#: src/config/options.inc:1176 msgid "Drop shadows" msgstr "Porter des ombres" -#: src/config/options.inc:1157 +#: src/config/options.inc:1178 msgid "" "Make dialogs drop shadows (the shadows are solid, you can\n" "adjust their color by ui.colors.*.dialog.shadow). You may\n" @@ -4161,11 +4184,11 @@ msgstr "" "ombres est définie par ui.colors.*.dialog.shadow). Vous pouvez\n" "réduire la largeur des bordures en éditant setup.h." -#: src/config/options.inc:1161 +#: src/config/options.inc:1182 msgid "Underline menu hotkeys" msgstr "Souligner les raccourcis des menus" -#: src/config/options.inc:1163 +#: src/config/options.inc:1184 msgid "" "Whether to underline hotkeys in menus to make them more\n" "visible. Requires the underlining is enabled for the terminal." @@ -4173,11 +4196,11 @@ msgstr "" "Souligner ou non les raccourcis des menus pour les rendre\n" "plus visibles. Le soulignement doit être activé pour le terminal." -#: src/config/options.inc:1166 +#: src/config/options.inc:1187 msgid "Underline button shortcuts" msgstr "Souligner les raccourcis des boutons" -#: src/config/options.inc:1168 +#: src/config/options.inc:1189 msgid "" "Whether to underline button shortcuts to make them more\n" "visible. Requires the underlining is enabled for the terminal." @@ -4185,11 +4208,11 @@ msgstr "" "Souligner ou non les raccourcis des boutons pour les rendre\n" "plus visibles. Le soulignement doit être activé pour le terminal." -#: src/config/options.inc:1172 +#: src/config/options.inc:1193 msgid "Timer options" msgstr "Options des timers" -#: src/config/options.inc:1174 +#: src/config/options.inc:1195 msgid "" "Timed action after certain interval of user inactivity. Someone can\n" "even find this useful, although you may not believe that." @@ -4197,7 +4220,7 @@ msgstr "" "Action après un certain temps d'inactivité de l'utilisateur. Certains\n" "peuvent trouver ceci utile ou non." -#: src/config/options.inc:1180 +#: src/config/options.inc:1201 msgid "" "Whether to enable the timer or not:\n" "0 is don't count down anything\n" @@ -4209,7 +4232,7 @@ msgstr "" "1 oui, mais ne pas montrer le timer\n" "2 oui et montrer le timer près des LEDs" -#: src/config/options.inc:1187 +#: src/config/options.inc:1208 msgid "" "Whether to enable the timer or not:\n" "0 is don't count down anything\n" @@ -4221,11 +4244,11 @@ msgstr "" "1 oui, mais ne pas montrer le timer\n" "2 oui et montrer le timer près des LEDs (DÉSACTIVÉ)" -#: src/config/options.inc:1193 +#: src/config/options.inc:1214 msgid "Duration" msgstr "Durée" -#: src/config/options.inc:1195 +#: src/config/options.inc:1216 msgid "" "Inactivity timeout in seconds. The maximum of one day\n" "should be enough for just everyone (TM)." @@ -4233,23 +4256,23 @@ msgstr "" "Délai d'inactivité en secondes. Une durée maximale\n" "d'un jour devrait suffire à tout le monde (TM)." -#: src/config/options.inc:1200 +#: src/config/options.inc:1221 msgid "Keybinding action to be triggered when timer reaches zero." msgstr "Action à déclencher lorsque le timer atteint zéro." -#: src/config/options.inc:1203 +#: src/config/options.inc:1224 msgid "Window tabs" msgstr "Onglets" -#: src/config/options.inc:1205 +#: src/config/options.inc:1226 msgid "Window tabs settings." msgstr "Configuration des onglets." -#: src/config/options.inc:1207 +#: src/config/options.inc:1228 msgid "Display tabs bar" msgstr "Afficher la barre d'onglets" -#: src/config/options.inc:1209 +#: src/config/options.inc:1230 msgid "" "Show tabs bar on the screen:\n" "0 means never\n" @@ -4261,20 +4284,20 @@ msgstr "" "1 seulement si deux onglets ou plus sont ouverts\n" "2 toujours" -#: src/config/options.inc:1214 +#: src/config/options.inc:1235 msgid "Tab bar at top" msgstr "Barre d'onglets en haut" -#: src/config/options.inc:1216 +#: src/config/options.inc:1237 msgid "Whether display tab bar at top like other browsers do." msgstr "" "Afficher ou non la barre d'onglets en haut, comme les autres navigateurs." -#: src/config/options.inc:1218 +#: src/config/options.inc:1239 msgid "Wrap-around tabs cycling" msgstr "Navigation cyclique dans les onglets" -#: src/config/options.inc:1220 +#: src/config/options.inc:1241 msgid "" "When moving right from the last tab, jump at the first one, and\n" "vice versa." @@ -4282,20 +4305,20 @@ msgstr "" "En cas de déplacement à droite sur le dernier onglet, saute au premier\n" "et vice-versa." -#: src/config/options.inc:1223 +#: src/config/options.inc:1244 msgid "Confirm tab closing" msgstr "Confirmer la fermeture d'onglet" -#: src/config/options.inc:1225 +#: src/config/options.inc:1246 msgid "When closing a tab show confirmation dialog." msgstr "" "Lors de la fermeture d'un onglet, afficher un dialogue de confirmation." -#: src/config/options.inc:1229 src/config/opttypes.c:409 +#: src/config/options.inc:1250 src/config/opttypes.c:405 msgid "Language" msgstr "Langue" -#: src/config/options.inc:1231 +#: src/config/options.inc:1252 msgid "" "Language of user interface. 'System' means that the language will\n" "be extracted from the environment dynamically." @@ -4303,35 +4326,35 @@ msgstr "" "Langue de l'interface utilisateur. 'System' signifie que la langue\n" "sera dynamiquement extraite de l'environnement." -#: src/config/options.inc:1234 +#: src/config/options.inc:1255 msgid "Display menu bar always" msgstr "Toujours afficher la barre de menu" -#: src/config/options.inc:1236 +#: src/config/options.inc:1257 msgid "Always show menu bar on the screen." msgstr "Toujours montrer la barre de menu à l'écran." -#: src/config/options.inc:1238 +#: src/config/options.inc:1259 msgid "Display status bar" msgstr "Afficher la barre d'état" -#: src/config/options.inc:1240 +#: src/config/options.inc:1261 msgid "Show status bar on the screen." msgstr "Montrer la barre d'état." -#: src/config/options.inc:1242 +#: src/config/options.inc:1263 msgid "Display title bar" msgstr "Afficher la barre de titre" -#: src/config/options.inc:1244 +#: src/config/options.inc:1265 msgid "Show title bar on the screen." msgstr "Montrer la barre de titre." -#: src/config/options.inc:1246 +#: src/config/options.inc:1267 msgid "Display goto dialog in new tabs" msgstr "Afficher le dialogue \"Atteindre l'URL\" dans les nouveaux onglets" -#: src/config/options.inc:1248 +#: src/config/options.inc:1269 msgid "" "Pop up goto dialog in newly created tabs when there's no homepage\n" "set. This means also showing goto dialog on startup." @@ -4340,11 +4363,11 @@ msgstr "" "quand aucune page d'accueil n'est configurée. Cela implique aussi de\n" "montrer le dialogue au démarrage." -#: src/config/options.inc:1251 +#: src/config/options.inc:1272 msgid "Show a message box when file is saved successfully" msgstr "Afficher un dialogue quand le fichier a été sauvé avec succès" -#: src/config/options.inc:1253 +#: src/config/options.inc:1274 msgid "" "When you pressed a [ Save ] button in some manager, this option\n" "will make sure that a box confirming success of the operation will\n" @@ -4354,27 +4377,27 @@ msgstr "" "option active un dialogue qui confirme que l'opération s'est déroulée\n" "correctement." -#: src/config/options.inc:1258 +#: src/config/options.inc:1279 msgid "Sessions" msgstr "Sessions" -#: src/config/options.inc:1260 +#: src/config/options.inc:1281 msgid "Sessions settings." msgstr "Configuration des sessions." -#: src/config/options.inc:1262 +#: src/config/options.inc:1283 msgid "Keep session active" msgstr "Garder la session active" -#: src/config/options.inc:1264 +#: src/config/options.inc:1285 msgid "Keep the session active even if the last terminal exits." msgstr "Garder la session active même si le dernier terminal est clos." -#: src/config/options.inc:1266 +#: src/config/options.inc:1287 msgid "Auto save session" msgstr "Sauver automatiquement la session" -#: src/config/options.inc:1268 +#: src/config/options.inc:1289 msgid "" "Automatically save the session when quitting.\n" "This feature requires bookmark support." @@ -4382,11 +4405,11 @@ msgstr "" "Sauvegarder automatiquement la session au moment de quitter.\n" "Cette fonctionnalité nécessite le support des signets." -#: src/config/options.inc:1271 +#: src/config/options.inc:1292 msgid "Auto restore session" msgstr "Restaurer automatiquement la session" -#: src/config/options.inc:1273 +#: src/config/options.inc:1294 msgid "" "Automatically restore the session at start.\n" "This feature requires bookmark support." @@ -4394,11 +4417,11 @@ msgstr "" "Restaurer automatiquement la session au démarrage.\n" "Cette fonctionnalité nécessite le support des signets." -#: src/config/options.inc:1276 +#: src/config/options.inc:1297 msgid "Auto save and restore session folder name" msgstr "Nom du dossier pour la session automatique" -#: src/config/options.inc:1278 +#: src/config/options.inc:1299 msgid "" "Name of the bookmarks folder used for auto saving and restoring session.\n" "The name has to be unique. Any folders with the same name will be deleted.\n" @@ -4408,11 +4431,11 @@ msgstr "" "automatique de la session. Le nom doit être unique, tout dossier du même\n" "nom sera détruit. Cette option n'a de sens qu'avec le support des signets." -#: src/config/options.inc:1282 +#: src/config/options.inc:1303 msgid "Homepage URI" msgstr "URI de la page d'accueil" -#: src/config/options.inc:1284 +#: src/config/options.inc:1305 msgid "" "The URI to load either at startup time when no URI was given\n" "on the command line or when requested by the goto-url-home action.\n" @@ -4424,19 +4447,19 @@ msgstr "" "Mettre \"\" si la variable d'environnement WWW_HOME doit être\n" "utilisée comme URI de page d'accueil." -#: src/config/options.inc:1290 +#: src/config/options.inc:1311 msgid "Date format" msgstr "Format des dates" -#: src/config/options.inc:1292 +#: src/config/options.inc:1313 msgid "Date format to use in dialogs. See strftime(3)." msgstr "Format utilisé pour les dates dans les dialogues. Voir strftime(3)." -#: src/config/options.inc:1295 +#: src/config/options.inc:1316 msgid "Set window title" msgstr "Modifier le titre de la fenêtre" -#: src/config/options.inc:1297 +#: src/config/options.inc:1318 msgid "" "Set the window title when running in a windowing environment\n" "in an xterm-like terminal. This way the document's title is\n" @@ -4450,60 +4473,60 @@ msgstr "" msgid "Read error" msgstr "Erreur de lecture" -#: src/config/opttypes.c:403 +#: src/config/opttypes.c:399 msgid "Boolean" msgstr "Booléen" -#: src/config/opttypes.c:403 +#: src/config/opttypes.c:399 msgid "[0|1]" msgstr "[0|1]" -#: src/config/opttypes.c:404 +#: src/config/opttypes.c:400 msgid "Integer" msgstr "Entier" -#: src/config/opttypes.c:404 src/config/opttypes.c:405 +#: src/config/opttypes.c:400 src/config/opttypes.c:401 msgid "" msgstr "" -#: src/config/opttypes.c:405 +#: src/config/opttypes.c:401 msgid "Longint" msgstr "Entier long" -#: src/config/opttypes.c:406 +#: src/config/opttypes.c:402 msgid "String" msgstr "Chaîne" -#: src/config/opttypes.c:406 +#: src/config/opttypes.c:402 msgid "" msgstr "" -#: src/config/opttypes.c:408 +#: src/config/opttypes.c:404 msgid "" msgstr "" -#: src/config/opttypes.c:409 +#: src/config/opttypes.c:405 msgid "" msgstr "" -#: src/config/opttypes.c:410 +#: src/config/opttypes.c:406 msgid "Color" msgstr "Couleur" -#: src/config/opttypes.c:410 +#: src/config/opttypes.c:406 msgid "" msgstr "" -#: src/config/opttypes.c:412 +#: src/config/opttypes.c:408 msgid "Special" msgstr "Spécial" -#: src/config/opttypes.c:414 +#: src/config/opttypes.c:410 msgid "Alias" msgstr "Alias" #. tree -#: src/config/opttypes.c:417 +#: src/config/opttypes.c:413 msgid "Folder" msgstr "Dossier" @@ -5669,7 +5692,7 @@ msgstr "" "Laisser à \"\" pour utiliser le style initial du document." #. name: -#: src/ecmascript/ecmascript.c:41 src/ecmascript/ecmascript.c:348 +#: src/ecmascript/ecmascript.c:41 src/ecmascript/ecmascript.c:349 msgid "ECMAScript" msgstr "ECMAScript" @@ -5719,11 +5742,11 @@ msgstr "" "Interdire ou non l'ouverture de fenêtres ou d'onglets\n" "par les scripts." -#: src/ecmascript/ecmascript.c:262 +#: src/ecmascript/ecmascript.c:263 msgid "JavaScript Emergency" msgstr "Alerte JavaScript" -#: src/ecmascript/ecmascript.c:264 +#: src/ecmascript/ecmascript.c:265 #, c-format msgid "" "A script embedded in the current document was running\n" @@ -8478,17 +8501,17 @@ msgstr "Mauvaise taille de terminal: %d, %d" msgid "Warning: terminal name contains illicit chars." msgstr "Attention: le nom du terminal contient des caractères illicites." -#: src/terminal/event.c:255 +#: src/terminal/event.c:257 #, c-format msgid "Failed to create session." msgstr "Echec de création de session." -#: src/terminal/event.c:442 +#: src/terminal/event.c:444 #, c-format msgid "Bad event %d" msgstr "Mauvais évènement %d" -#: src/terminal/event.c:482 +#: src/terminal/event.c:484 #, c-format msgid "Could not read event: %d (%s)" msgstr "Impossible de lire l'évènement: %d (%s)" @@ -8562,88 +8585,88 @@ msgstr "Ancre manquante" msgid "The requested fragment \"%s\" doesn't exist." msgstr "L'ancre demandée \"%s\" n'existe pas." -#: src/viewer/text/form.c:1024 +#: src/viewer/text/form.c:1039 msgid "Error while posting form" msgstr "Erreur lors de l'envoi du formulaire" -#: src/viewer/text/form.c:1025 +#: src/viewer/text/form.c:1040 #, c-format msgid "Could not load file %s: %s" msgstr "Impossible de charger le fichier %s: %s" -#: src/viewer/text/form.c:1787 +#: src/viewer/text/form.c:1794 msgid "Reset form" msgstr "Réinitialiser le formulaire" -#: src/viewer/text/form.c:1789 +#: src/viewer/text/form.c:1796 msgid "Harmless button" msgstr "Bouton sans impact" -#: src/viewer/text/form.c:1797 +#: src/viewer/text/form.c:1804 msgid "Submit form to" msgstr "Envoi du formulaire à" -#: src/viewer/text/form.c:1798 +#: src/viewer/text/form.c:1805 msgid "Post form to" msgstr "Transfert du formulaire à" -#: src/viewer/text/form.c:1800 +#: src/viewer/text/form.c:1807 msgid "Radio button" msgstr "Bouton radio" -#: src/viewer/text/form.c:1804 +#: src/viewer/text/form.c:1811 msgid "Select field" msgstr "Liste" -#: src/viewer/text/form.c:1808 +#: src/viewer/text/form.c:1815 msgid "Text area" msgstr "Champ texte multiligne" -#: src/viewer/text/form.c:1810 +#: src/viewer/text/form.c:1817 msgid "File upload" msgstr "Envoi de fichier" -#: src/viewer/text/form.c:1812 +#: src/viewer/text/form.c:1819 msgid "Password field" msgstr "Champ mot de passe" -#: src/viewer/text/form.c:1850 +#: src/viewer/text/form.c:1857 msgid "name" msgstr "Nom" -#: src/viewer/text/form.c:1862 +#: src/viewer/text/form.c:1869 msgid "value" msgstr "Valeur" -#: src/viewer/text/form.c:1875 +#: src/viewer/text/form.c:1882 msgid "read only" msgstr "lecture seule" -#: src/viewer/text/form.c:1886 +#: src/viewer/text/form.c:1893 #, c-format msgid "press %s to navigate" msgstr "pressez %s pour naviguer" -#: src/viewer/text/form.c:1888 +#: src/viewer/text/form.c:1895 #, c-format msgid "press %s to edit" msgstr "pressez %s pour éditer" -#: src/viewer/text/form.c:1924 +#: src/viewer/text/form.c:1931 #, c-format msgid "press %s to submit to %s" msgstr "pressez %s pour soumettre à %s" -#: src/viewer/text/form.c:1926 +#: src/viewer/text/form.c:1933 #, c-format msgid "press %s to post to %s" msgstr "pressez %s pour poster à %s" -#: src/viewer/text/form.c:2028 +#: src/viewer/text/form.c:2035 msgid "Useless button" msgstr "Bouton inutile" -#: src/viewer/text/form.c:2030 +#: src/viewer/text/form.c:2037 msgid "Submit button" msgstr "Bouton Soumettre" diff --git a/po/pl.po b/po/pl.po index 70601ec8..db4c186c 100644 --- a/po/pl.po +++ b/po/pl.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: ELinks 0.12.GIT\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-03-23 13:49+0100\n" -"PO-Revision-Date: 2007-03-23 14:10+0100\n" +"POT-Creation-Date: 2007-06-07 12:34+0200\n" +"PO-Revision-Date: 2007-06-07 12:40+0200\n" "Last-Translator: Witold Filipczyk \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" @@ -40,10 +40,10 @@ msgstr "Wci #: src/bfu/hierbox.c:441 src/bfu/inpfield.c:256 src/bfu/msgbox.c:173 #: src/bfu/msgbox.c:194 src/config/dialogs.c:57 src/config/dialogs.c:365 #: src/cookies/dialogs.c:372 src/cookies/dialogs.c:470 src/dialogs/edit.c:98 -#: src/dialogs/info.c:134 src/dialogs/options.c:232 src/dialogs/options.c:313 +#: src/dialogs/info.c:134 src/dialogs/options.c:234 src/dialogs/options.c:315 #: src/mime/dialogs.c:131 src/protocol/auth/dialogs.c:115 -#: src/protocol/protocol.c:236 src/scripting/lua/core.c:390 -#: src/scripting/lua/core.c:471 src/scripting/python/dialogs.c:86 +#: src/protocol/protocol.c:236 src/scripting/lua/core.c:398 +#: src/scripting/lua/core.c:479 src/scripting/python/dialogs.c:86 #: src/session/session.c:807 src/viewer/text/search.c:1669 msgid "~OK" msgstr "~OK" @@ -153,8 +153,8 @@ msgstr "Nie znaleziono wyra #: src/bfu/hierbox.c:976 src/config/dialogs.c:140 src/config/dialogs.c:329 #: src/config/dialogs.c:479 src/cookies/dialogs.c:34 src/cookies/dialogs.c:366 -#: src/dialogs/edit.c:92 src/dialogs/edit.c:94 src/scripting/lua/core.c:386 -#: src/scripting/lua/core.c:387 src/scripting/lua/core.c:468 +#: src/dialogs/edit.c:92 src/dialogs/edit.c:94 src/scripting/lua/core.c:394 +#: src/scripting/lua/core.c:395 src/scripting/lua/core.c:476 msgid "Name" msgstr "Nazwa" @@ -182,9 +182,9 @@ msgstr "Musisz wpisa #. accelerator_context(do_auth_dialog, do_edit_dialog, input_dialog, menu_add_ext, resize_terminal_dialog, src/config/dialogs.c:build_edit_dialog, src/cookies/dialogs.c:build_edit_dialog, src/cookies/dialogs.c:push_add_server_button, src/protocol/bittorrent/dialogs.c:bittorrent_query_callback, src/scripting/lua/core.c:l_edit_bookmark_dialog, src/scripting/lua/core.c:l_xdialog, src/session/download.c:do_type_query, src/session/download.c:lookup_unique_name, src/viewer/text/search.c:search_dlg_do, terminal_options) #: src/bfu/inpfield.c:256 src/config/dialogs.c:366 src/cookies/dialogs.c:373 #: src/cookies/dialogs.c:471 src/dialogs/edit.c:102 src/dialogs/edit.c:105 -#: src/dialogs/options.c:235 src/dialogs/options.c:314 src/mime/dialogs.c:132 +#: src/dialogs/options.c:237 src/dialogs/options.c:316 src/mime/dialogs.c:132 #: src/protocol/auth/dialogs.c:116 src/protocol/bittorrent/dialogs.c:812 -#: src/scripting/lua/core.c:391 src/scripting/lua/core.c:472 +#: src/scripting/lua/core.c:399 src/scripting/lua/core.c:480 #: src/session/download.c:644 src/session/download.c:1266 #: src/viewer/text/search.c:1670 msgid "~Cancel" @@ -199,8 +199,8 @@ msgid "Digital clock in the status bar." msgstr "Cyfrowy zegar w pasku statusu." # -#: src/bfu/leds.c:77 src/bfu/leds.c:94 src/config/options.inc:1178 -#: src/config/options.inc:1185 src/ecmascript/ecmascript.c:45 +#: src/bfu/leds.c:77 src/bfu/leds.c:94 src/config/options.inc:1199 +#: src/config/options.inc:1206 src/ecmascript/ecmascript.c:45 #: src/globhist/globhist.c:64 src/mime/backend/mailcap.c:93 #: src/mime/backend/mimetypes.c:52 src/network/ssl/ssl.c:80 msgid "Enable" @@ -378,7 +378,7 @@ msgstr "" "\n" "Wymagana jest obs³uga zak³adek." -#: src/bookmarks/dialogs.c:72 src/config/options.inc:1030 +#: src/bookmarks/dialogs.c:72 src/config/options.inc:1051 #: src/dialogs/document.c:145 src/globhist/dialogs.c:65 msgid "Title" msgstr "Tytu³" @@ -386,7 +386,7 @@ msgstr "Tytu #: src/bookmarks/dialogs.c:73 src/cache/dialogs.c:65 #: src/dialogs/document.c:136 src/dialogs/edit.c:96 src/formhist/dialogs.c:63 #: src/globhist/dialogs.c:66 src/protocol/auth/dialogs.c:163 -#: src/scripting/lua/core.c:388 +#: src/scripting/lua/core.c:396 msgid "URL" msgstr "URL" @@ -446,7 +446,7 @@ msgstr "Dodaj folder" msgid "Folder name" msgstr "Nazwa foldera" -#: src/bookmarks/dialogs.c:310 src/scripting/lua/core.c:382 +#: src/bookmarks/dialogs.c:310 src/scripting/lua/core.c:390 msgid "Edit bookmark" msgstr "Edytuj zak³adkê" @@ -1835,8 +1835,29 @@ msgstr "zmodyfikowany" msgid "(expand by pressing space)" msgstr "(rozwiñ przyciskaj±c spacjê)" +#. TODO: Incorporate some of the following to the option text. +#. * +#. * When UTF-8 I/O is disabled: +#. * 0 (TERM_DUMB) outputs ASCII -+| characters. +#. * 1 (TERM_VT100) switches charsets with ^N and ^O. +#. * 2 (TERM_LINUX) outputs CP437 characters without switching +#. * charsets, so it works correctly only if the terminal uses +#. * CP437. Can also be made CP850 and CP852 compatible with +#. * the restrict_852 option. +#. * 3 (TERM_KOI8) outputs KOI8-R characters without switching +#. * charsets, so it works correctly only if the terminal uses +#. * KOI8-R and the user has selected either KOI8-R or ASCII +#. * in ELinks. It is also mostly compatible with KOI8-U. +#. * 4 (TERM_FREEBSD) outputs characters in the 0x80...0x9F +#. * range, which FreeBSD 4.0 (but not 5.0) treated as +#. * graphical. +#. * +#. * When UTF-8 I/O is enabled, ELinks outputs (almost) the same +#. * characters as above but encodes them in UTF-8 and does not +#. * switch charsets. So, it will work in any terminal that +#. * understands UTF-8 and has the characters in its font. #: src/config/dialogs.c:149 src/config/dialogs.c:330 -#: src/config/options.inc:819 +#: src/config/options.inc:840 msgid "Type" msgstr "Typ" @@ -1904,7 +1925,7 @@ msgstr "Nie mo #. accelerator_context(src/config/dialogs.c:keybinding_buttons, src/config/dialogs.c:option_buttons, src/cookies/dialogs.c:cookie_buttons, src/formhist/dialogs.c:formhist_buttons, src/protocol/bittorrent/dialogs.c:bittorrent_query_callback, src/session/download.c:do_type_query, terminal_options) #: src/config/dialogs.c:507 src/config/dialogs.c:935 src/cookies/dialogs.c:495 -#: src/dialogs/options.c:234 src/formhist/dialogs.c:214 +#: src/dialogs/options.c:236 src/formhist/dialogs.c:214 #: src/protocol/bittorrent/dialogs.c:799 src/session/download.c:1250 msgid "Sa~ve" msgstr "~Zapisz" @@ -1917,7 +1938,7 @@ msgstr "Menad msgid "Keystroke" msgstr "Skrót klawiszowy" -#: src/config/dialogs.c:676 src/config/options.inc:1198 +#: src/config/dialogs.c:676 src/config/options.inc:1219 msgid "Action" msgstr "Akcja" @@ -2032,11 +2053,6 @@ msgstr "Nierozpoznana akcja (b msgid "Error registering event" msgstr "B³±d przy rejestrowaniu zdarzenia" -#. name: -#: src/config/kbdbind.c:992 -msgid "Keyboard Bindings" -msgstr "Przypisania klawiszy" - #. #: src/config/options.inc:19 msgid "Configuration system" @@ -2267,8 +2283,7 @@ msgstr "" # #. Keep options in alphabetical order. -#. name: -#: src/config/options.inc:134 src/document/document.c:346 +#: src/config/options.inc:134 msgid "Document" msgstr "Dokument" @@ -2568,13 +2583,13 @@ msgstr "Kolory aktywnego odno # #: src/config/options.inc:274 src/config/options.inc:549 -#: src/config/options.inc:924 +#: src/config/options.inc:945 msgid "Background color" msgstr "Kolor t³a" # #: src/config/options.inc:276 src/config/options.inc:551 -#: src/config/options.inc:925 +#: src/config/options.inc:946 msgid "Default background color." msgstr "Domy¶lny kolor t³a." @@ -2588,12 +2603,12 @@ msgstr "Domy #. The colors and mono tree should be similar but with different default #. * values of course so always use the macros below. #: src/config/options.inc:278 src/config/options.inc:545 -#: src/config/options.inc:922 +#: src/config/options.inc:943 msgid "Text color" msgstr "Kolor tekstu" #: src/config/options.inc:280 src/config/options.inc:547 -#: src/config/options.inc:923 +#: src/config/options.inc:944 msgid "Default text color." msgstr "Domy¶lny kolor tekstu." @@ -2627,8 +2642,8 @@ msgstr "Inwersja kolor msgid "Invert the fore- and background color so the link stands out." msgstr "Odwróæ kolory tekstu i t³a tak, ¿eby wyró¿niæ odno¶nik." -#: src/config/options.inc:296 src/config/options.inc:887 -#: src/dialogs/options.c:229 +#: src/config/options.inc:296 src/config/options.inc:908 +#: src/dialogs/options.c:231 msgid "Underline" msgstr "Podkre¶lenie" @@ -3317,8 +3332,8 @@ msgstr "Zrzuty" msgid "Dump output options." msgstr "Ustawienia dotycz±ce zrzutów." -#: src/config/options.inc:640 src/config/options.inc:891 -#: src/config/opttypes.c:408 src/dialogs/document.c:163 +#: src/config/options.inc:640 src/config/options.inc:912 +#: src/config/opttypes.c:404 src/dialogs/document.c:163 msgid "Codepage" msgstr "Strona kodowa" @@ -3330,7 +3345,7 @@ msgstr "" "Strona kodowa u¿yta podczas zrzutu. 'System' oznacza\n" "i¿ zostanie okre¶lona przez wybrane locale." -#: src/config/options.inc:645 src/config/options.inc:857 +#: src/config/options.inc:645 src/config/options.inc:878 msgid "Color mode" msgstr "Tryb kolorowy" @@ -3673,7 +3688,7 @@ msgid "Options specific to this terminal type (according to $TERM value)." msgstr "" "Ustawienia specyficzne dla danego typu terminala (nawi±zuj±c do $TERM)." -#: src/config/options.inc:821 +#: src/config/options.inc:842 msgid "" "Terminal type; matters mostly only when drawing frames and\n" "dialog box borders:\n" @@ -3691,29 +3706,30 @@ msgstr "" "3 - KOI-8\n" "4 - FreeBSD" -#: src/config/options.inc:829 src/dialogs/options.c:225 +#: src/config/options.inc:850 src/dialogs/options.c:227 msgid "Switch fonts for line drawing" msgstr "Zmiana fontu do rysowania linii" -#: src/config/options.inc:831 +#: src/config/options.inc:852 msgid "" "Switch fonts when drawing lines, enabling both local characters\n" -"and lines working at the same time. Makes sense only with linux\n" -"terminal." +"and lines working at the same time. ELinks uses this option only if\n" +"UTF-8 I/O is disabled and the terminal type is Linux or FreeBSD." msgstr "" "Zmienia font podczas rysowania linii, w³±czaj±c oba zestawy\n" -"znaków. Ma sens jedynie na linuksowym terminalu." +"znaków. ELinks u¿ywa tej opcji jedynie gdy UTF-8 I/O jest wy³±czone\n" +"i typ terminala to Linux lub FreeBSD." #. When CONFIG_UTF8 is defined, any code that reads the "utf_8_io" #. * option should also check whether the "codepage" option is UTF-8, #. * and if so, behave as if "utf_8_io" were 1. (When CONFIG_UTF8 is #. * not defined, it should not be possible to set UTF-8 as "codepage"; #. * please report any such possibilities as bugs.) -#: src/config/options.inc:840 src/dialogs/options.c:230 +#: src/config/options.inc:861 src/dialogs/options.c:232 msgid "UTF-8 I/O" msgstr "I/O w UTF-8" -#: src/config/options.inc:842 +#: src/config/options.inc:863 msgid "" "Enable I/O in UTF-8 for Unicode terminals. Note that currently,\n" "only the subset of UTF-8 according to terminal codepage is used.\n" @@ -3724,11 +3740,11 @@ msgstr "" "strony kodowej. ELinks pomija tê opcjê, je¶li stron± kodow±\n" "terminala jest UTF-8." -#: src/config/options.inc:846 src/dialogs/options.c:226 +#: src/config/options.inc:867 src/dialogs/options.c:228 msgid "Restrict frames in cp850/852" msgstr "Ogranicz ramki w cp850/852" -#: src/config/options.inc:848 +#: src/config/options.inc:869 msgid "" "Restrict the characters used when drawing lines. Makes sense\n" "only with linux terminals using the cp850/852 character sets." @@ -3737,11 +3753,11 @@ msgstr "" "z terminalami linuksowymi u¿ywaj±cymi stron kodowych cp850/852." # -#: src/config/options.inc:851 src/dialogs/options.c:227 +#: src/config/options.inc:872 src/dialogs/options.c:229 msgid "Block cursor" msgstr "Kursor blokowy" -#: src/config/options.inc:853 +#: src/config/options.inc:874 msgid "" "Move cursor to bottom right corner when done drawing.\n" "This is particularly useful when we have a block cursor,\n" @@ -3756,7 +3772,7 @@ msgstr "" #. * an outer list entry after an inner list. #. * TRANSLATORS: This restriction applies only to the #. * "en" (English) translation. (See doc/Makefile.) -#: src/config/options.inc:864 +#: src/config/options.inc:885 msgid "" "The color mode controls what colors are used and how they are output to the " "terminal.\n" @@ -3782,11 +3798,11 @@ msgstr "" "3 - tryb 256 kolorowy, u¿ywa kodów RGB xterma\n" "4 - tryb koloru 24-bitowy, u¿ywa kodów RGB konsole" -#: src/config/options.inc:877 src/dialogs/options.c:228 +#: src/config/options.inc:898 src/dialogs/options.c:230 msgid "Transparency" msgstr "Przezroczysto¶æ" -#: src/config/options.inc:879 +#: src/config/options.inc:900 msgid "" "If we should not set the background to black. This is particularly\n" "useful when we have a terminal (typically in some windowing\n" @@ -3806,11 +3822,11 @@ msgstr "" "jest jasne). Wiedz, ¿e to ustawienie ma sens jedynie, gdy u¿ywanie\n" "kolorów jest w³±czone." -#: src/config/options.inc:889 +#: src/config/options.inc:910 msgid "If we should use underline or enhance the color instead." msgstr "Czy powinno siê u¿ywaæ podkre¶lenia czy wzmocnienia koloru." -#: src/config/options.inc:893 +#: src/config/options.inc:914 msgid "" "Codepage of charset used for displaying content on terminal.\n" "'System' stands for a codepage determined by a selected locale." @@ -3819,347 +3835,347 @@ msgstr "" "'System' oznacza i¿ zostanie okre¶lona przez wybrane locale." #. Keep options in alphabetical order. -#: src/config/options.inc:900 +#: src/config/options.inc:921 msgid "User interface" msgstr "Interfejs u¿ytkownika" # -#: src/config/options.inc:902 +#: src/config/options.inc:923 msgid "User interface options." msgstr "Ustawienia interfejsu u¿ytkownika." -#: src/config/options.inc:906 +#: src/config/options.inc:927 msgid "Color settings" msgstr "Ustawienia kolorów" -#: src/config/options.inc:908 +#: src/config/options.inc:929 msgid "Default user interface color settings." msgstr "Domy¶lne ustawienia kolorów interfejsu u¿ytkownika." # -#: src/config/options.inc:935 +#: src/config/options.inc:956 msgid "Color terminals" -msgstr "Kolorowe terminale" +msgstr "Terminale kolorowe" -#: src/config/options.inc:937 +#: src/config/options.inc:958 msgid "Color settings for color terminal." msgstr "Ustawienia kolorów dla kolorowych terminali." -#: src/config/options.inc:939 +#: src/config/options.inc:960 msgid "Non-color terminals" msgstr "Terminale monochromatyczne" -#: src/config/options.inc:941 +#: src/config/options.inc:962 msgid "Color settings for non-color terminal." msgstr "Ustawienia kolorów dla terminali monochromatycznych." #. FIXME: obsolete, how to alias them correctly ? --Zas -#: src/config/options.inc:944 +#: src/config/options.inc:965 msgid "Main menu bar" msgstr "Pasek menu g³ównego" -#: src/config/options.inc:946 +#: src/config/options.inc:967 msgid "Main menu bar colors." msgstr "Kolory g³ównego paska menu." -#: src/config/options.inc:948 +#: src/config/options.inc:969 msgid "Unselected main menu bar item" msgstr "Pasek niewybranego elementu menu" -#: src/config/options.inc:950 +#: src/config/options.inc:971 msgid "Unselected main menu bar item colors." msgstr "Kolory dla paska niewybranego elementu menu." -#: src/config/options.inc:952 +#: src/config/options.inc:973 msgid "Selected main menu bar item" msgstr "Pasek wybranego elementu menu" -#: src/config/options.inc:954 +#: src/config/options.inc:975 msgid "Selected main menu bar item colors." msgstr "Kolory dla paska wybranego elementu menu." -#: src/config/options.inc:956 src/config/options.inc:985 +#: src/config/options.inc:977 src/config/options.inc:1006 msgid "Hotkey" msgstr "Klawisz skrótu" -#: src/config/options.inc:958 +#: src/config/options.inc:979 msgid "Main menu hotkey colors." msgstr "Kolory klawiszy skrótu g³ównego paska menu." -#: src/config/options.inc:960 src/config/options.inc:989 +#: src/config/options.inc:981 src/config/options.inc:1010 msgid "Unselected hotkey" msgstr "Niewybrany klawisz skrótu" -#: src/config/options.inc:962 +#: src/config/options.inc:983 msgid "Main menu unselected hotkey colors." msgstr "Kolory niewybranych klawiszy skrótu g³ównego menu." # -#: src/config/options.inc:964 src/config/options.inc:993 +#: src/config/options.inc:985 src/config/options.inc:1014 msgid "Selected hotkey" msgstr "Wybrany klawisz skrótu" -#: src/config/options.inc:966 +#: src/config/options.inc:987 msgid "Main menu selected hotkey colors." msgstr "Kolory wybranych klawiszy skrótu g³ównego menu." -#: src/config/options.inc:969 +#: src/config/options.inc:990 msgid "Menu bar" msgstr "Pasek menu" -#: src/config/options.inc:971 +#: src/config/options.inc:992 msgid "Menu bar colors." msgstr "Kolory paska menu." -#: src/config/options.inc:973 +#: src/config/options.inc:994 msgid "Unselected menu item" msgstr "Niewybrane elementy menu" -#: src/config/options.inc:975 +#: src/config/options.inc:996 msgid "Unselected menu item colors." msgstr "Kolory niewybranego elementu menu." # -#: src/config/options.inc:977 +#: src/config/options.inc:998 msgid "Selected menu item" msgstr "Pod¶wietlone elementy menu" -#: src/config/options.inc:979 +#: src/config/options.inc:1000 msgid "Selected menu item colors." msgstr "Kolory wybranych elementów menu." # -#: src/config/options.inc:981 +#: src/config/options.inc:1002 msgid "Marked menu item" msgstr "Pod¶wietlone elementy menu" -#: src/config/options.inc:983 +#: src/config/options.inc:1004 msgid "Marked menu item colors." msgstr "Kolory pod¶wietlonych elementów menu." -#: src/config/options.inc:987 +#: src/config/options.inc:1008 msgid "Menu item hotkey colors." msgstr "Kolory klawiszy skrótu menu." -#: src/config/options.inc:991 +#: src/config/options.inc:1012 msgid "Menu item unselected hotkey colors." msgstr "Kolory niewybranych klawiszy skrótu menu." -#: src/config/options.inc:995 +#: src/config/options.inc:1016 msgid "Menu item selected hotkey colors." msgstr "Kolory wybranych klawiszy skrótu menu." # -#: src/config/options.inc:997 +#: src/config/options.inc:1018 msgid "Menu frame" msgstr "Ramka menu" -#: src/config/options.inc:999 +#: src/config/options.inc:1020 msgid "Menu frame colors." msgstr "Kolory ramki menu." -#: src/config/options.inc:1002 +#: src/config/options.inc:1023 msgid "Dialog" msgstr "Okno dialogowe" -#: src/config/options.inc:1004 +#: src/config/options.inc:1025 msgid "Dialog colors." msgstr "Kolory okna dialogowego." -#: src/config/options.inc:1014 +#: src/config/options.inc:1035 msgid "Generic" msgstr "Zwyk³e" -#: src/config/options.inc:1016 +#: src/config/options.inc:1037 msgid "Generic dialog colors." msgstr "Zwyk³e kolory okienka dialogowego." # -#: src/config/options.inc:1018 +#: src/config/options.inc:1039 msgid "Frame" msgstr "Ramka" -#: src/config/options.inc:1020 +#: src/config/options.inc:1041 msgid "Dialog frame colors." msgstr "Kolory ramki okna dialogowego." -#: src/config/options.inc:1022 +#: src/config/options.inc:1043 msgid "Scrollbar" msgstr "Pasek przewijania" -#: src/config/options.inc:1024 +#: src/config/options.inc:1045 msgid "Scrollbar colors." msgstr "Kolory paska przewijania." -#: src/config/options.inc:1026 +#: src/config/options.inc:1047 msgid "Selected scrollbar" msgstr "Wybrany pasek przewijania" -#: src/config/options.inc:1028 +#: src/config/options.inc:1049 msgid "Scrollbar selected colors." msgstr "Kolory wybranego paska przewijania." -#: src/config/options.inc:1032 +#: src/config/options.inc:1053 msgid "Dialog title colors." msgstr "Kolory tytu³u okna dialogowego." # -#: src/config/options.inc:1034 +#: src/config/options.inc:1055 msgid "Text" msgstr "Tekst" -#: src/config/options.inc:1036 +#: src/config/options.inc:1057 msgid "Dialog text colors." msgstr "Kolory tekstu w oknie dialogowym." -#: src/config/options.inc:1038 src/viewer/text/form.c:1802 +#: src/config/options.inc:1059 src/viewer/text/form.c:1809 msgid "Checkbox" msgstr "Przycisk wyboru" -#: src/config/options.inc:1040 +#: src/config/options.inc:1061 msgid "Dialog checkbox colors." msgstr "Kolory przycisku wyboru." # -#: src/config/options.inc:1042 +#: src/config/options.inc:1063 msgid "Selected checkbox" msgstr "Wybrany przycisk wyboru" -#: src/config/options.inc:1044 +#: src/config/options.inc:1065 msgid "Dialog selected checkbox colors." msgstr "Kolory wybranego przycisku wyboru." # -#: src/config/options.inc:1046 +#: src/config/options.inc:1067 msgid "Checkbox label" msgstr "Etykieta przycisku wyboru" -#: src/config/options.inc:1048 +#: src/config/options.inc:1069 msgid "Dialog checkbox label colors." msgstr "Kolory etykiety przycisku wyboru." -#: src/config/options.inc:1050 +#: src/config/options.inc:1071 msgid "Button" msgstr "Przycisk" -#: src/config/options.inc:1052 src/config/options.inc:1060 +#: src/config/options.inc:1073 src/config/options.inc:1081 msgid "Dialog button colors." msgstr "Kolory przycisku." # -#: src/config/options.inc:1054 +#: src/config/options.inc:1075 msgid "Selected button" msgstr "Wybrany przycisk" -#: src/config/options.inc:1056 src/config/options.inc:1064 +#: src/config/options.inc:1077 src/config/options.inc:1085 msgid "Dialog selected button colors." msgstr "Kolory wybranego przycisku." -#: src/config/options.inc:1058 +#: src/config/options.inc:1079 msgid "Button shortcut" msgstr "Klawisz skrótu przycisku" # -#: src/config/options.inc:1062 +#: src/config/options.inc:1083 msgid "Selected button shortcut" msgstr "Klawisz skrótu wybranego przycisku" -#: src/config/options.inc:1066 src/viewer/text/form.c:1806 +#: src/config/options.inc:1087 src/viewer/text/form.c:1813 msgid "Text field" msgstr "Pole tekstowe" -#: src/config/options.inc:1068 +#: src/config/options.inc:1089 msgid "Dialog text field colors." msgstr "Kolory pola tekstowego." # -#: src/config/options.inc:1070 +#: src/config/options.inc:1091 msgid "Text field text" msgstr "Tekst w polu tekstowym" -#: src/config/options.inc:1072 +#: src/config/options.inc:1093 msgid "Dialog field text colors." msgstr "Kolory tekstu w polu tekstowym." -#: src/config/options.inc:1074 +#: src/config/options.inc:1095 msgid "Meter" msgstr "Licznik" -#: src/config/options.inc:1076 +#: src/config/options.inc:1097 msgid "Dialog meter colors." msgstr "Kolory licznika." -#: src/config/options.inc:1078 +#: src/config/options.inc:1099 msgid "Shadow" msgstr "Cieñ" -#: src/config/options.inc:1080 +#: src/config/options.inc:1101 msgid "Dialog shadow colors (see ui.shadows option)." msgstr "Kolory cienia (zobacz opcjê ui.shadows)." # -#: src/config/options.inc:1082 +#: src/config/options.inc:1103 msgid "Title bar" msgstr "Pasek tytu³owy" -#: src/config/options.inc:1084 +#: src/config/options.inc:1105 msgid "Title bar colors." msgstr "Kolory paska tytu³owego." -#: src/config/options.inc:1086 +#: src/config/options.inc:1107 msgid "Generic title bar" msgstr "Zwyk³y pasek tytu³owy" -#: src/config/options.inc:1088 +#: src/config/options.inc:1109 msgid "Generic title bar colors." msgstr "Kolory zwyk³ego paska tytu³owego." -#: src/config/options.inc:1090 +#: src/config/options.inc:1111 msgid "Title bar text" msgstr "Tekst na pasku tytu³owym" -#: src/config/options.inc:1092 +#: src/config/options.inc:1113 msgid "Title bar text colors." msgstr "Kolory tekstu na pasku tytu³owym." -#: src/config/options.inc:1095 +#: src/config/options.inc:1116 msgid "Status bar" msgstr "Pasek statusu" -#: src/config/options.inc:1097 +#: src/config/options.inc:1118 msgid "Status bar colors." msgstr "Kolory paska statusu." -#: src/config/options.inc:1099 +#: src/config/options.inc:1120 msgid "Generic status bar" msgstr "Zwyk³y pasek statusu" -#: src/config/options.inc:1101 +#: src/config/options.inc:1122 msgid "Generic status bar colors." msgstr "Kolory zwyk³ego paska statusu." # -#: src/config/options.inc:1103 +#: src/config/options.inc:1124 msgid "Status bar text" msgstr "Tekst na pasku statusu" -#: src/config/options.inc:1105 +#: src/config/options.inc:1126 msgid "Status bar text colors." msgstr "Kolory tekstu na pasku statusu." -#: src/config/options.inc:1108 +#: src/config/options.inc:1129 msgid "Tabs bar" msgstr "Pasek kart" -#: src/config/options.inc:1110 +#: src/config/options.inc:1131 msgid "Tabs bar colors." msgstr "Kolory paska kart." -#: src/config/options.inc:1112 +#: src/config/options.inc:1133 msgid "Unvisited tab" msgstr "Nieodwiedzana karta" -#: src/config/options.inc:1114 +#: src/config/options.inc:1135 msgid "" "Tab colors for tabs that have not been\n" "selected since they completed loading." @@ -4167,44 +4183,44 @@ msgstr "" "Kolory karty dla kart, które nie zosta³y\n" "wybrane od zakoñczenia ³adowania." -#: src/config/options.inc:1117 +#: src/config/options.inc:1138 msgid "Unselected tab" msgstr "Niewybrana karta" -#: src/config/options.inc:1119 +#: src/config/options.inc:1140 msgid "Unselected tab colors." msgstr "Kolory niewybranych kart." -#: src/config/options.inc:1121 +#: src/config/options.inc:1142 msgid "Loading tab" msgstr "Karta, do której wczytywany jest dokument" -#: src/config/options.inc:1123 +#: src/config/options.inc:1144 msgid "Tab colors for tabs that are loading in the background." msgstr "Kolory kart dla kart, do których wczytywany jest dokument w tle." # -#: src/config/options.inc:1125 +#: src/config/options.inc:1146 msgid "Selected tab" msgstr "Wybrana karta" -#: src/config/options.inc:1127 +#: src/config/options.inc:1148 msgid "Selected tab colors." msgstr "Kolory wybranej karty." -#: src/config/options.inc:1129 +#: src/config/options.inc:1150 msgid "Tab separator" msgstr "Separator kart" -#: src/config/options.inc:1131 +#: src/config/options.inc:1152 msgid "Tab separator colors." msgstr "Kolory separatora kart." -#: src/config/options.inc:1134 +#: src/config/options.inc:1155 msgid "Searched strings" msgstr "Szukane ³añcuchy" -#: src/config/options.inc:1136 +#: src/config/options.inc:1157 msgid "Searched string highlight colors." msgstr "Kolory pod¶wietlenia szukanych ³añcuchów." @@ -4212,19 +4228,19 @@ msgstr "Kolory pod #. ============= BORING PART (colors) END =================== #. ========================================================== #. Keep options in alphabetical order. -#: src/config/options.inc:1145 +#: src/config/options.inc:1166 msgid "Dialog settings" msgstr "Ustawienia okien dialogowych" -#: src/config/options.inc:1147 +#: src/config/options.inc:1168 msgid "Dialogs-specific appearance and behaviour settings." msgstr "Ustawienia dotycz±ce wygl±du i zachowania okien dialogowych." -#: src/config/options.inc:1150 +#: src/config/options.inc:1171 msgid "Minimal height of listbox widget" msgstr "Minimalna wysoko¶æ listy wyboru" -#: src/config/options.inc:1152 +#: src/config/options.inc:1173 msgid "" "Minimal height of the listbox widget (used e.g. for bookmarks\n" "or global history)." @@ -4232,11 +4248,11 @@ msgstr "" "Minimalna wysoko¶æ listy wyboru (u¿ywanej np. przy zak³adkach\n" "czy globalnej historii)." -#: src/config/options.inc:1155 +#: src/config/options.inc:1176 msgid "Drop shadows" msgstr "Rzucanie cienia" -#: src/config/options.inc:1157 +#: src/config/options.inc:1178 msgid "" "Make dialogs drop shadows (the shadows are solid, you can\n" "adjust their color by ui.colors.*.dialog.shadow). You may\n" @@ -4247,11 +4263,11 @@ msgstr "" "ui.colors.*.dialog.shadow). Mo¿esz te¿ wyeliminowaæ szerokie\n" "obrze¿a przez dostosowanie pliku setup.h." -#: src/config/options.inc:1161 +#: src/config/options.inc:1182 msgid "Underline menu hotkeys" msgstr "Podkre¶lanie klawiszy skrótu menu" -#: src/config/options.inc:1163 +#: src/config/options.inc:1184 msgid "" "Whether to underline hotkeys in menus to make them more\n" "visible. Requires the underlining is enabled for the terminal." @@ -4259,11 +4275,11 @@ msgstr "" "Czy podkre¶laæ klawisze skrótu w menu, by by³y bardziej\n" "widoczne? Wymaga w³±czenia podkre¶lania dla terminala." -#: src/config/options.inc:1166 +#: src/config/options.inc:1187 msgid "Underline button shortcuts" msgstr "Podkre¶lanie klawiszy skrótu przycisku" -#: src/config/options.inc:1168 +#: src/config/options.inc:1189 msgid "" "Whether to underline button shortcuts to make them more\n" "visible. Requires the underlining is enabled for the terminal." @@ -4272,11 +4288,11 @@ msgstr "" "widoczne? Wymaga w³±czenia podkre¶lania dla terminala." # -#: src/config/options.inc:1172 +#: src/config/options.inc:1193 msgid "Timer options" msgstr "Ustawienia stopera" -#: src/config/options.inc:1174 +#: src/config/options.inc:1195 msgid "" "Timed action after certain interval of user inactivity. Someone can\n" "even find this useful, although you may not believe that." @@ -4284,7 +4300,7 @@ msgstr "" "Odmierzane akcje po pewnym okresie bezczynno¶ci u¿ytkownika.\n" "Komu¶ mo¿e siê to przyda, chocia¿ mo¿esz w to nie wierzyæ." -#: src/config/options.inc:1180 +#: src/config/options.inc:1201 msgid "" "Whether to enable the timer or not:\n" "0 is don't count down anything\n" @@ -4296,7 +4312,7 @@ msgstr "" "1 - odlicza, ale nie pokazuje stopera\n" "2 - odlicza i pokazuje stoper w pobli¿u LEDów" -#: src/config/options.inc:1187 +#: src/config/options.inc:1208 msgid "" "Whether to enable the timer or not:\n" "0 is don't count down anything\n" @@ -4309,37 +4325,37 @@ msgstr "" "2 - odlicza i pokazuje stoper w pobli¿u LEDów (WY£¡CZONE)" # -#: src/config/options.inc:1193 +#: src/config/options.inc:1214 msgid "Duration" msgstr "Czas trwania" -#: src/config/options.inc:1195 +#: src/config/options.inc:1216 msgid "" "Inactivity timeout in seconds. The maximum of one day\n" "should be enough for just everyone (TM)." msgstr "" "Limit czasu bezczynno¶ci. Jeden dzieñ powinien wystarczyæ ka¿demu (TM)." -#: src/config/options.inc:1200 +#: src/config/options.inc:1221 msgid "Keybinding action to be triggered when timer reaches zero." msgstr "" "Akcja powi±zana z klawiatur±, która ma byæ wyzwolona gdy\n" "stoper osi±gnie zero." -#: src/config/options.inc:1203 +#: src/config/options.inc:1224 msgid "Window tabs" msgstr "Karty" -#: src/config/options.inc:1205 +#: src/config/options.inc:1226 msgid "Window tabs settings." msgstr "Ustawienia kart." # -#: src/config/options.inc:1207 +#: src/config/options.inc:1228 msgid "Display tabs bar" msgstr "Wy¶wietl pasek kart" -#: src/config/options.inc:1209 +#: src/config/options.inc:1230 msgid "" "Show tabs bar on the screen:\n" "0 means never\n" @@ -4351,39 +4367,39 @@ msgstr "" "1 - tylko gdy wiêcej ni¿ jedna karta jest otwarta\n" "2 - zawsze" -#: src/config/options.inc:1214 +#: src/config/options.inc:1235 msgid "Tab bar at top" msgstr "Pasek kart u góry" -#: src/config/options.inc:1216 +#: src/config/options.inc:1237 msgid "Whether display tab bar at top like other browsers do." msgstr "" "Czy wy¶wietlaæ pasek kart u góry strony, tak jak w innych\n" "przegl±darkach." -#: src/config/options.inc:1218 +#: src/config/options.inc:1239 msgid "Wrap-around tabs cycling" msgstr "Cykliczno¶æ kart" -#: src/config/options.inc:1220 +#: src/config/options.inc:1241 msgid "" "When moving right from the last tab, jump at the first one, and\n" "vice versa." msgstr "Przeskakiwanie z ostatniej karty do pierwszej i na odwrót." -#: src/config/options.inc:1223 +#: src/config/options.inc:1244 msgid "Confirm tab closing" msgstr "Potwierdzenie zamkniêcia karty" -#: src/config/options.inc:1225 +#: src/config/options.inc:1246 msgid "When closing a tab show confirmation dialog." msgstr "Przy zamykaniu karty pokazuj okienko dialogowe potwierdzania." -#: src/config/options.inc:1229 src/config/opttypes.c:409 +#: src/config/options.inc:1250 src/config/opttypes.c:405 msgid "Language" msgstr "Jêzyk" -#: src/config/options.inc:1231 +#: src/config/options.inc:1252 msgid "" "Language of user interface. 'System' means that the language will\n" "be extracted from the environment dynamically." @@ -4392,37 +4408,37 @@ msgstr "" "zostanie uzyskany ze ¶rodowiska w sposób dynamiczny." # -#: src/config/options.inc:1234 +#: src/config/options.inc:1255 msgid "Display menu bar always" msgstr "Wy¶wietlanie paska tytu³owego na sta³e" -#: src/config/options.inc:1236 +#: src/config/options.inc:1257 msgid "Always show menu bar on the screen." msgstr "Zawsze pokazuj pasek tytu³owy na ekranie." # -#: src/config/options.inc:1238 +#: src/config/options.inc:1259 msgid "Display status bar" msgstr "Wy¶wietlanie paska statusu" -#: src/config/options.inc:1240 +#: src/config/options.inc:1261 msgid "Show status bar on the screen." msgstr "Pokazuje pasek statusu na ekranie." # -#: src/config/options.inc:1242 +#: src/config/options.inc:1263 msgid "Display title bar" msgstr "Wy¶wietlanie paska tytu³owego" -#: src/config/options.inc:1244 +#: src/config/options.inc:1265 msgid "Show title bar on the screen." msgstr "Pokazuje pasek tytu³owy na ekranie." -#: src/config/options.inc:1246 +#: src/config/options.inc:1267 msgid "Display goto dialog in new tabs" msgstr "Wy¶wietlanie okienka \"goto\" w nowych kartach" -#: src/config/options.inc:1248 +#: src/config/options.inc:1269 msgid "" "Pop up goto dialog in newly created tabs when there's no homepage\n" "set. This means also showing goto dialog on startup." @@ -4431,11 +4447,11 @@ msgstr "" "je¶li strona domowa nie jest ustawiona. Oznacza to i¿ okno\n" "to bêdzie pokazywane tak¿e przy starcie." -#: src/config/options.inc:1251 +#: src/config/options.inc:1272 msgid "Show a message box when file is saved successfully" msgstr "Pokazuj okienko dialogowe, gdy plik zostanie pomy¶lnie zapisany" -#: src/config/options.inc:1253 +#: src/config/options.inc:1274 msgid "" "When you pressed a [ Save ] button in some manager, this option\n" "will make sure that a box confirming success of the operation will\n" @@ -4445,27 +4461,27 @@ msgstr "" "te ustawienie zapewni, ¿e pojawi siê okienko potwierdzaj±ce\n" "pomy¶lne wykonanie operacji." -#: src/config/options.inc:1258 +#: src/config/options.inc:1279 msgid "Sessions" msgstr "Sesje" -#: src/config/options.inc:1260 +#: src/config/options.inc:1281 msgid "Sessions settings." msgstr "Ustawienia sesji." -#: src/config/options.inc:1262 +#: src/config/options.inc:1283 msgid "Keep session active" msgstr "Utrzymuj aktywn± sesjê" -#: src/config/options.inc:1264 +#: src/config/options.inc:1285 msgid "Keep the session active even if the last terminal exits." msgstr "Utrzymuj sesjê nawet po zamkniêciu ostatniego terminala." -#: src/config/options.inc:1266 +#: src/config/options.inc:1287 msgid "Auto save session" msgstr "Automatyczne zapisywanie sesji" -#: src/config/options.inc:1268 +#: src/config/options.inc:1289 msgid "" "Automatically save the session when quitting.\n" "This feature requires bookmark support." @@ -4473,11 +4489,11 @@ msgstr "" "Automatycznie zapisuj sesjê przy koñczeniu dzia³ania.\n" "Wymagana jest obs³uga zak³adek." -#: src/config/options.inc:1271 +#: src/config/options.inc:1292 msgid "Auto restore session" msgstr "Automatyczne odtwarzanie sesji" -#: src/config/options.inc:1273 +#: src/config/options.inc:1294 msgid "" "Automatically restore the session at start.\n" "This feature requires bookmark support." @@ -4485,11 +4501,11 @@ msgstr "" "Automatycznie odtwarzaj sesjê na starcie.\n" "Wymagana jest obs³uga zak³adek." -#: src/config/options.inc:1276 +#: src/config/options.inc:1297 msgid "Auto save and restore session folder name" msgstr "Nazwa foldera do automatycznego zapisywania i odtwarzania sesji" -#: src/config/options.inc:1278 +#: src/config/options.inc:1299 msgid "" "Name of the bookmarks folder used for auto saving and restoring session.\n" "The name has to be unique. Any folders with the same name will be deleted.\n" @@ -4500,11 +4516,11 @@ msgstr "" "Foldery o takiej samej nazwie zostan± usuniête. Ma to sens\n" "jedynie wtedy, gdy wkompilowana jest obs³uga zak³adek." -#: src/config/options.inc:1282 +#: src/config/options.inc:1303 msgid "Homepage URI" msgstr "URI strony domowej" -#: src/config/options.inc:1284 +#: src/config/options.inc:1305 msgid "" "The URI to load either at startup time when no URI was given\n" "on the command line or when requested by the goto-url-home action.\n" @@ -4517,20 +4533,20 @@ msgstr "" "¶rodowiskowej WWW_HOME powinna byæ u¿yta jako strona domowa." # -#: src/config/options.inc:1290 +#: src/config/options.inc:1311 msgid "Date format" msgstr "Format daty" -#: src/config/options.inc:1292 +#: src/config/options.inc:1313 msgid "Date format to use in dialogs. See strftime(3)." msgstr "Format daty u¿ywany w dialog. Zobacz strftime(3)." # -#: src/config/options.inc:1295 +#: src/config/options.inc:1316 msgid "Set window title" msgstr "Ustalenie tytu³u okna" -#: src/config/options.inc:1297 +#: src/config/options.inc:1318 msgid "" "Set the window title when running in a windowing environment\n" "in an xterm-like terminal. This way the document's title is\n" @@ -4545,62 +4561,62 @@ msgstr "" msgid "Read error" msgstr "B³±d odczytu" -#: src/config/opttypes.c:403 +#: src/config/opttypes.c:399 msgid "Boolean" msgstr "Typ boolowski" -#: src/config/opttypes.c:403 +#: src/config/opttypes.c:399 msgid "[0|1]" msgstr "[0|1]" -#: src/config/opttypes.c:404 +#: src/config/opttypes.c:400 msgid "Integer" msgstr "Liczba ca³kowita" -#: src/config/opttypes.c:404 src/config/opttypes.c:405 +#: src/config/opttypes.c:400 src/config/opttypes.c:401 msgid "" msgstr "" -#: src/config/opttypes.c:405 +#: src/config/opttypes.c:401 msgid "Longint" msgstr "Du¿a liczba ca³kowita" -#: src/config/opttypes.c:406 +#: src/config/opttypes.c:402 msgid "String" msgstr "Napis" -#: src/config/opttypes.c:406 +#: src/config/opttypes.c:402 msgid "" msgstr "<³añcuch>" # -#: src/config/opttypes.c:408 +#: src/config/opttypes.c:404 msgid "" msgstr "" # -#: src/config/opttypes.c:409 +#: src/config/opttypes.c:405 msgid "" msgstr "" -#: src/config/opttypes.c:410 +#: src/config/opttypes.c:406 msgid "Color" msgstr "Kolor" -#: src/config/opttypes.c:410 +#: src/config/opttypes.c:406 msgid "" msgstr "" -#: src/config/opttypes.c:412 +#: src/config/opttypes.c:408 msgid "Special" msgstr "Specjalny" -#: src/config/opttypes.c:414 +#: src/config/opttypes.c:410 msgid "Alias" msgstr "Alias" #. tree -#: src/config/opttypes.c:417 +#: src/config/opttypes.c:413 msgid "Folder" msgstr "Folder" @@ -5575,7 +5591,7 @@ msgid "Files:" msgstr "Pliki:" #. 2 '\n' + 1 '\0' -#: src/dialogs/options.c:171 +#: src/dialogs/options.c:173 #, c-format msgid "" "The environmental variable TERM is set to '%s'.\n" @@ -5592,68 +5608,68 @@ msgstr "" "Pozwala to na konfiguracjê tych ustawieñ dla ka¿dego z\n" "terminali, w których uruchamiasz ELinksa." -#: src/dialogs/options.c:197 +#: src/dialogs/options.c:199 msgid "Terminal options" msgstr "Opcje terminala" -#: src/dialogs/options.c:206 +#: src/dialogs/options.c:208 msgid "Frame handling:" msgstr "Rysowanie ramek:" -#: src/dialogs/options.c:207 +#: src/dialogs/options.c:209 msgid "No frames" msgstr "Brak ramek" -#: src/dialogs/options.c:208 +#: src/dialogs/options.c:210 msgid "VT 100 frames" msgstr "Ramki VT100" -#: src/dialogs/options.c:209 +#: src/dialogs/options.c:211 msgid "Linux or OS/2 frames" msgstr "Ramki typu Linux lub OS/2" -#: src/dialogs/options.c:210 +#: src/dialogs/options.c:212 msgid "FreeBSD frames" msgstr "Ramki FreeBSD" -#: src/dialogs/options.c:211 +#: src/dialogs/options.c:213 msgid "KOI8-R frames" msgstr "Ramki KOI8-R" -#: src/dialogs/options.c:213 +#: src/dialogs/options.c:215 msgid "Color mode:" msgstr "Tryb kolorowy:" -#: src/dialogs/options.c:214 +#: src/dialogs/options.c:216 msgid "No colors (mono)" msgstr "Brak kolorów (mono)" -#: src/dialogs/options.c:215 +#: src/dialogs/options.c:217 msgid "16 colors" msgstr "16 kolorów" -#: src/dialogs/options.c:217 +#: src/dialogs/options.c:219 msgid "88 colors" msgstr "88 kolorów" -#: src/dialogs/options.c:220 +#: src/dialogs/options.c:222 msgid "256 colors" msgstr "256 kolorów" # -#: src/dialogs/options.c:223 +#: src/dialogs/options.c:225 msgid "true color" msgstr "kolor 24-bitowy" -#: src/dialogs/options.c:307 +#: src/dialogs/options.c:309 msgid "Resize terminal" msgstr "Zmieñ rozmiar terminala" -#: src/dialogs/options.c:310 +#: src/dialogs/options.c:312 msgid "Width=" msgstr "Szeroko¶æ=" -#: src/dialogs/options.c:311 +#: src/dialogs/options.c:313 msgid "Height=" msgstr "Wysoko¶æ=" @@ -5795,7 +5811,7 @@ msgstr "" "Zostaw jako \"\", ¿eby u¿ywaæ wbudowanych styli dokumentu." #. name: -#: src/ecmascript/ecmascript.c:41 src/ecmascript/ecmascript.c:348 +#: src/ecmascript/ecmascript.c:41 src/ecmascript/ecmascript.c:349 msgid "ECMAScript" msgstr "ECMAScript" @@ -5844,11 +5860,11 @@ msgstr "Blokowanie okienek pop-up" msgid "Whether to disallow scripts to open new windows or tabs." msgstr "Czy zabroniæ skryptom otwieranie nowych okien lub kart." -#: src/ecmascript/ecmascript.c:262 +#: src/ecmascript/ecmascript.c:263 msgid "JavaScript Emergency" msgstr "Wypadek JavaScriptu" -#: src/ecmascript/ecmascript.c:264 +#: src/ecmascript/ecmascript.c:265 #, c-format msgid "" "A script embedded in the current document was running\n" @@ -5862,7 +5878,7 @@ msgstr "" "Wykonywanie skryptu zosta³o przerwane." #. name: -#: src/ecmascript/see.c:184 +#: src/ecmascript/see.c:186 msgid "SEE" msgstr "SEE" @@ -5880,7 +5896,7 @@ msgid "JavaScript Error" msgstr "B³±d JavaScriptu" #. name: -#: src/ecmascript/spidermonkey.c:315 +#: src/ecmascript/spidermonkey.c:320 msgid "SpiderMonkey" msgstr "SpiderMonkey" @@ -6584,7 +6600,7 @@ msgstr "" "Typ MIME przyjmowany domy¶lnie (gdy nie mo¿na go okre¶liæ\n" "z informacji o dokumencie)." -#: src/network/ssl/ssl.c:71 src/network/ssl/ssl.c:156 +#: src/network/ssl/ssl.c:71 src/network/ssl/ssl.c:151 msgid "Verify certificates" msgstr "Sprawdzaj certyfikaty" @@ -6627,7 +6643,7 @@ msgstr "" "ustawione, u¿yty bêdzie plik wskazywany przez zmienn±\n" "¶rodowiskow± X509_CLIENT_CERT." -#: src/network/ssl/ssl.c:158 +#: src/network/ssl/ssl.c:153 msgid "" "Verify the peer's SSL certificate. Note that this\n" "probably doesn't work properly at all with GnuTLS." @@ -6636,12 +6652,12 @@ msgstr "" "w ogóle nie dzia³aæ z GnuTLS." #. name: -#: src/network/ssl/ssl.c:177 src/network/ssl/ssl.c:194 +#: src/network/ssl/ssl.c:172 src/network/ssl/ssl.c:189 msgid "SSL" msgstr "SSL" # -#: src/network/ssl/ssl.c:179 +#: src/network/ssl/ssl.c:174 msgid "SSL options." msgstr "Ustawienia SSL." @@ -8353,23 +8369,23 @@ msgstr "Nie okre msgid "Guile" msgstr "Guile" -#: src/scripting/lua/core.c:312 src/scripting/python/keybinding.c:151 +#: src/scripting/lua/core.c:320 src/scripting/python/keybinding.c:151 msgid "Error registering event hook" msgstr "B³±d przy rejestrowaniu zaczepienia zdarzenia" -#: src/scripting/lua/core.c:463 src/scripting/python/dialogs.c:171 +#: src/scripting/lua/core.c:471 src/scripting/python/dialogs.c:171 msgid "User dialog" msgstr "Okno dialogowe u¿ytkownika" -#: src/scripting/lua/core.c:740 +#: src/scripting/lua/core.c:748 msgid "Lua Error" msgstr "B³±d Lua" -#: src/scripting/lua/core.c:890 +#: src/scripting/lua/core.c:898 msgid "Lua Console" msgstr "Konsola Lua" -#: src/scripting/lua/core.c:890 +#: src/scripting/lua/core.c:898 msgid "Enter expression" msgstr "Wprowad¼ wyra¿enie" @@ -8641,17 +8657,17 @@ msgstr "B msgid "Warning: terminal name contains illicit chars." msgstr "Ostrze¿enie: nazwa terminala zawiera \"nieprzyzwoite\" znaki." -#: src/terminal/event.c:255 +#: src/terminal/event.c:257 #, c-format msgid "Failed to create session." msgstr "Nie uda³o siê utworzyæ sesji." -#: src/terminal/event.c:442 +#: src/terminal/event.c:444 #, c-format msgid "Bad event %d" msgstr "B³êdne zdarzenie %d" -#: src/terminal/event.c:482 +#: src/terminal/event.c:484 #, c-format msgid "Could not read event: %d (%s)" msgstr "Nie mo¿na odczytaæ zdarzenia: %d (%s)" @@ -8661,12 +8677,6 @@ msgstr "Nie mo msgid "Too many bytes read from the itrm!" msgstr "Zbyt du¿o bajtów przeczytanych z itrm!" -# -#. name: -#: src/terminal/screen.c:1129 -msgid "Terminal Screen" -msgstr "Ekran terminala" - #: src/terminal/tab.c:205 msgid "Do you really want to close the current tab?" msgstr "Czy na pewno chcesz zamkn±æ bie¿±c± kartê?" @@ -8675,12 +8685,6 @@ msgstr "Czy na pewno chcesz zamkn msgid "Do you really want to close all except the current tab?" msgstr "Czy na pewno chcesz zamkn±æ wszystkie karty za wyj±tkiem bie¿±cej?" -# -#. name: -#: src/terminal/terminal.c:383 -msgid "Terminal" -msgstr "Terminal" - #: src/util/secsave.c:361 msgid "Cannot read the file" msgstr "B³±d odczytu z pliku" @@ -8738,202 +8742,202 @@ msgstr "Brakuj msgid "The requested fragment \"%s\" doesn't exist." msgstr "Wybrany fragment \"%s\" nie istnieje." -#: src/viewer/text/form.c:1024 +#: src/viewer/text/form.c:1039 msgid "Error while posting form" msgstr "Wyst±pi³ b³±d podczas wysy³ania formularza" -#: src/viewer/text/form.c:1025 +#: src/viewer/text/form.c:1040 #, c-format msgid "Could not load file %s: %s" msgstr "Nie mo¿na wczytaæ pliku %s: %s" -#: src/viewer/text/form.c:1787 +#: src/viewer/text/form.c:1794 msgid "Reset form" msgstr "Wyczy¶æ formularz" # -#: src/viewer/text/form.c:1789 +#: src/viewer/text/form.c:1796 msgid "Harmless button" msgstr "Nieszkodliwy przycisk" -#: src/viewer/text/form.c:1797 +#: src/viewer/text/form.c:1804 msgid "Submit form to" msgstr "Prze¶lij formularz do" -#: src/viewer/text/form.c:1798 +#: src/viewer/text/form.c:1805 msgid "Post form to" msgstr "Wy¶lij formularz do" -#: src/viewer/text/form.c:1800 +#: src/viewer/text/form.c:1807 msgid "Radio button" msgstr "Okr±g³y przycisk" -#: src/viewer/text/form.c:1804 +#: src/viewer/text/form.c:1811 msgid "Select field" msgstr "Pole wyboru" -#: src/viewer/text/form.c:1808 +#: src/viewer/text/form.c:1815 msgid "Text area" msgstr "Pole tekstowe" -#: src/viewer/text/form.c:1810 +#: src/viewer/text/form.c:1817 msgid "File upload" msgstr "£adowanie pliku" -#: src/viewer/text/form.c:1812 +#: src/viewer/text/form.c:1819 msgid "Password field" msgstr "Pole has³a" -#: src/viewer/text/form.c:1850 +#: src/viewer/text/form.c:1857 msgid "name" msgstr "nazwa" -#: src/viewer/text/form.c:1862 +#: src/viewer/text/form.c:1869 msgid "value" msgstr "warto¶æ" -#: src/viewer/text/form.c:1875 +#: src/viewer/text/form.c:1882 msgid "read only" msgstr "tylko do odczytu" -#: src/viewer/text/form.c:1886 +#: src/viewer/text/form.c:1893 #, c-format msgid "press %s to navigate" msgstr "wci¶nij %s aby nawigowaæ" -#: src/viewer/text/form.c:1888 +#: src/viewer/text/form.c:1895 #, c-format msgid "press %s to edit" msgstr "wci¶nij %s aby edytowaæ" -#: src/viewer/text/form.c:1924 +#: src/viewer/text/form.c:1931 #, c-format msgid "press %s to submit to %s" msgstr "wci¶nij %s aby wys³aæ do %s" -#: src/viewer/text/form.c:1926 +#: src/viewer/text/form.c:1933 #, c-format msgid "press %s to post to %s" msgstr "wci¶nij %s aby wys³aæ do %s" # -#: src/viewer/text/form.c:2028 +#: src/viewer/text/form.c:2035 msgid "Useless button" msgstr "Bezu¿yteczny przycisk" -#: src/viewer/text/form.c:2030 +#: src/viewer/text/form.c:2037 msgid "Submit button" msgstr "Przycisk wys³ania formularza" #. accelerator_context(link_menu.map) -#: src/viewer/text/link.c:1278 +#: src/viewer/text/link.c:1273 msgid "Display ~usemap" msgstr "Poka¿ ~mapê obrazków" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1283 +#: src/viewer/text/link.c:1278 msgid "~Follow link" msgstr "Wybierz od~no¶nik" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1285 +#: src/viewer/text/link.c:1280 msgid "Follow link and r~eload" msgstr "Wybierz odno¶nik i p~rze³aduj" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1289 +#: src/viewer/text/link.c:1284 msgid "Open in new ~window" msgstr "Otwórz w no~wym oknie" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1291 +#: src/viewer/text/link.c:1286 msgid "Open in new ~tab" msgstr "Otwórz w nowej ~karcie" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1293 +#: src/viewer/text/link.c:1288 msgid "Open in new tab in ~background" msgstr "Otwórz w nowej k~arcie w tle" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1298 +#: src/viewer/text/link.c:1293 msgid "~Download link" msgstr "~Pobierz" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1301 +#: src/viewer/text/link.c:1296 msgid "~Add link to bookmarks" msgstr "~Dodaj zak³adkê" #. accelerator_context(link_menu.std) -#: src/viewer/text/link.c:1305 +#: src/viewer/text/link.c:1300 msgid "Pass link URI to e~xternal command" msgstr "Przeka¿ URI odno¶nika do z~ewnêtrznego polecenia" #. accelerator_context(link_menu.form, link_menu.reset, link_menu.textarea) -#: src/viewer/text/link.c:1316 src/viewer/text/link.c:1356 +#: src/viewer/text/link.c:1311 src/viewer/text/link.c:1351 msgid "~Reset form" msgstr "Wy~czy¶æ formularz" #. accelerator_context(link_menu.textarea) -#: src/viewer/text/link.c:1331 +#: src/viewer/text/link.c:1326 msgid "Open in ~external editor" msgstr "Otwórz w zewnêtrznym ~edytorze" #. accelerator_context(link_menu.form, link_menu.textarea) -#: src/viewer/text/link.c:1339 +#: src/viewer/text/link.c:1334 msgid "~Submit form" msgstr "~Prze¶lij formularz" #. accelerator_context(link_menu.form, link_menu.textarea) -#: src/viewer/text/link.c:1340 +#: src/viewer/text/link.c:1335 msgid "Submit form and rel~oad" msgstr "Prze¶lij fo~rmularz i prze³aduj" #. accelerator_context(link_menu.form, link_menu.textarea) -#: src/viewer/text/link.c:1344 +#: src/viewer/text/link.c:1339 msgid "Submit form and open in new ~window" msgstr "Prze¶lij ~formularz i otwórz w nowym oknie" #. accelerator_context(link_menu.form, link_menu.textarea) -#: src/viewer/text/link.c:1346 +#: src/viewer/text/link.c:1341 msgid "Submit form and open in new ~tab" msgstr "Prze¶lij formularz i otwórz na nowej ~karcie" #. accelerator_context(link_menu.form, link_menu.textarea) -#: src/viewer/text/link.c:1349 +#: src/viewer/text/link.c:1344 msgid "Submit form and open in new tab in ~background" msgstr "Prze¶lij formularz i otwórz w ~tle na nowej karcie" #. accelerator_context(link_menu.form, link_menu.textarea) -#: src/viewer/text/link.c:1354 +#: src/viewer/text/link.c:1349 msgid "Submit form and ~download" msgstr "Prze¶lij formu~larz i ¶ci±gnij" #. accelerator_context(link_menu.form, link_menu.reset, link_menu.textarea) -#: src/viewer/text/link.c:1361 +#: src/viewer/text/link.c:1356 msgid "Form f~ields" msgstr "Pola form~ularza" #. accelerator_context(link_menu.form, link_menu.map, link_menu.std) -#: src/viewer/text/link.c:1368 +#: src/viewer/text/link.c:1363 msgid "V~iew image" msgstr "Poka¿ o~brazek" #. accelerator_context(link_menu.form, link_menu.map, link_menu.std) -#: src/viewer/text/link.c:1370 +#: src/viewer/text/link.c:1365 msgid "Download ima~ge" msgstr "Pobierz ~obrazek" -#: src/viewer/text/link.c:1379 +#: src/viewer/text/link.c:1374 msgid "No link selected" msgstr "Nie wybrano ¿adnego odno¶nika" -#: src/viewer/text/link.c:1449 +#: src/viewer/text/link.c:1444 msgid "Image" msgstr "Obrazek" -#: src/viewer/text/link.c:1454 +#: src/viewer/text/link.c:1449 msgid "Usemap" msgstr "Mapa obrazków" @@ -9060,6 +9064,17 @@ msgstr "Czasomierz" msgid "Viewer" msgstr "Przegl±darka" +#~ msgid "Keyboard Bindings" +#~ msgstr "Przypisania klawiszy" + +# +#~ msgid "Terminal Screen" +#~ msgstr "Ekran terminala" + +# +#~ msgid "Terminal" +#~ msgstr "Terminal" + #~ msgid "Delete text from clipboard" #~ msgstr "Skasuj tekst w schowku" diff --git a/src/.gitignore b/src/.gitignore new file mode 100644 index 00000000..996da6af --- /dev/null +++ b/src/.gitignore @@ -0,0 +1,2 @@ +ID +TAGS diff --git a/src/Makefile b/src/Makefile index 3b8387cd..87955058 100644 --- a/src/Makefile +++ b/src/Makefile @@ -38,8 +38,13 @@ vernum.o: $(LIB_O_NAME) elinks: $(LIB_O_NAME) vernum.o $(call cmd,link) +# Place the TAGS file in the source directory so that, if the same +# source is built for different configurations in different build +# directories, one doesn't have to remember which of those build +# directories has the most recent TAGS. TAGS: - find $(srcdir). \( -name "*.[ch]" -o -name "*.inc" \) -print \ + cd $(srcdir) \ + && find . \( -name "*.[ch]" -o -name "*.inc" \) -print \ | etags --regex='{c}/INIT_LIST_HEAD(\([[:alnum:]_]+\))/\1/' \ --regex='{c}/struct_hierbox_browser(\n[ \t]*\([[:alnum:]_]+\),/\1/m' \ --regex='{c}/^ACTION_(\([[:alnum:]_]+\),[^,]*,[ \t]*\([[:alnum:]_]+\),/ACT_\1_\2/' \ diff --git a/src/bfu/button.c b/src/bfu/button.c index e175c0e5..8267c945 100644 --- a/src/bfu/button.c +++ b/src/bfu/button.c @@ -130,7 +130,7 @@ dlg_format_buttons(struct terminal *term, mw = 0; #ifdef CONFIG_UTF8 buttons_width(widget_data1, i2 - i1 + 1, NULL, &mw, - term->utf8); + term->utf8_cp); #else buttons_width(widget_data1, i2 - i1 + 1, NULL, &mw); #endif /* CONFIG_UTF8 */ @@ -140,7 +140,7 @@ dlg_format_buttons(struct terminal *term, mw = 0; #ifdef CONFIG_UTF8 - buttons_width(widget_data1, i2 - i1, NULL, &mw, term->utf8); + buttons_width(widget_data1, i2 - i1, NULL, &mw, term->utf8_cp); #else buttons_width(widget_data1, i2 - i1, NULL, &mw); #endif /* CONFIG_UTF8 */ @@ -156,7 +156,7 @@ dlg_format_buttons(struct terminal *term, for (i = i1; i < i2; i++) { #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) set_box(&widget_data[i].box, p, *y, utf8_ptr2cells(widget_data[i].widget->text, NULL) @@ -196,7 +196,7 @@ display_button(struct dialog_data *dlg_data, struct widget_data *widget_data) if (!color || !shortcut_color) return EVENT_PROCESSED; #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { int button_left_len = utf8_ptr2cells(BUTTON_LEFT, NULL); int button_right_len = utf8_ptr2cells(BUTTON_RIGHT, NULL); @@ -222,7 +222,7 @@ display_button(struct dialog_data *dlg_data, struct widget_data *widget_data) ? SCREEN_ATTR_UNDERLINE : 0; #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { if (hk_pos >= 0) { int hk_bytes = utf8charlen(&text[hk_pos+1]); int cells_to_hk = utf8_ptr2cells(text, @@ -286,7 +286,7 @@ display_button(struct dialog_data *dlg_data, struct widget_data *widget_data) } } #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { int text_cells = utf8_ptr2cells(widget_data->widget->text, NULL); int hk = (widget_data->widget->info.button.hotkey_pos >= 0); diff --git a/src/bfu/dialog.c b/src/bfu/dialog.c index 335c4ec6..6694730d 100644 --- a/src/bfu/dialog.c +++ b/src/bfu/dialog.c @@ -102,7 +102,7 @@ redraw_dialog(struct dialog_data *dlg_data, int layout) int x, y; #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) titlecells = utf8_ptr2cells(title, &title[titlelen]); #endif /* CONFIG_UTF8 */ @@ -110,7 +110,7 @@ redraw_dialog(struct dialog_data *dlg_data, int layout) titlecells = int_min(box.width - 2, titlecells); #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) titlelen = utf8_cells2bytes(title, titlecells, NULL); #endif /* CONFIG_UTF8 */ @@ -619,7 +619,7 @@ generic_dialog_layouter(struct dialog_data *dlg_data) int x = 0, y, rw; #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) rw = int_min(w, utf8_ptr2cells(dlg_data->dlg->title, NULL)); else #endif /* CONFIG_UTF8 */ @@ -664,12 +664,12 @@ draw_dialog(struct dialog_data *dlg_data, int width, int height) draw_shadow(term, &dlg_data->box, get_bfu_color(term, "dialog.shadow"), 2, 1); #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) fix_dwchar_around_box(term, &dlg_data->box, 0, 2, 1); #endif /* CONFIG_UTF8 */ } #ifdef CONFIG_UTF8 - else if(term->utf8) + else if (term->utf8_cp) fix_dwchar_around_box(term, &dlg_data->box, 0, 0, 0); #endif /* CONFIG_UTF8 */ } diff --git a/src/bfu/group.c b/src/bfu/group.c index 3d34e7c7..cc4c6d8d 100644 --- a/src/bfu/group.c +++ b/src/bfu/group.c @@ -40,7 +40,7 @@ dlg_format_group(struct terminal *term, int label_padding; #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { if (text && *text) label_length = utf8_ptr2cells(text, NULL); else @@ -55,7 +55,7 @@ dlg_format_group(struct terminal *term, width = CHECKBOX_LEN; } else if (widget_is_textfield(widget_data)) { #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { width = utf8_ptr2cells(widget_data->widget->data, NULL); } else @@ -82,7 +82,7 @@ dlg_format_group(struct terminal *term, /* Draw text at right of checkbox. */ if (label_length) { #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { int lb = utf8_cells2bytes( text, label_length, @@ -108,7 +108,7 @@ dlg_format_group(struct terminal *term, /* Draw label at left of widget. */ if (label_length) { #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { int lb = utf8_cells2bytes( text, label_length, @@ -149,7 +149,7 @@ group_layouter(struct dialog_data *dlg_data) int n = dlg_data->number_of_widgets - 2; #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) rw = int_min(w, utf8_ptr2cells(dlg_data->dlg->title, NULL)); else #endif /* CONFIG_UTF8 */ diff --git a/src/bfu/inpfield.c b/src/bfu/inpfield.c index ed6c8590..cab51d86 100644 --- a/src/bfu/inpfield.c +++ b/src/bfu/inpfield.c @@ -271,7 +271,7 @@ display_field_do(struct dialog_data *dlg_data, struct widget_data *widget_data, #endif /* CONFIG_UTF8 */ #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { unsigned char *t = widget_data->cdata; int p = widget_data->info.field.cpos; @@ -298,9 +298,9 @@ display_field_do(struct dialog_data *dlg_data, struct widget_data *widget_data, int len, w; #ifdef CONFIG_UTF8 - if (term->utf8 && !hide) + if (term->utf8_cp && !hide) len = utf8_ptr2cells(text, NULL); - else if (term->utf8) + else if (term->utf8_cp) len = utf8_ptr2chars(text, NULL); else #endif /* CONFIG_UTF8 */ @@ -309,7 +309,7 @@ display_field_do(struct dialog_data *dlg_data, struct widget_data *widget_data, if (!hide) { #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) w = utf8_cells2bytes(text, w, NULL); #endif /* CONFIG_UTF8 */ draw_text(term, widget_data->box.x, widget_data->box.y, @@ -328,7 +328,7 @@ display_field_do(struct dialog_data *dlg_data, struct widget_data *widget_data, int x; #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) x = widget_data->box.x + len - left; else #endif /* CONFIG_UTF8 */ @@ -474,7 +474,7 @@ kbd_field(struct dialog_data *dlg_data, struct widget_data *widget_data) case ACT_EDIT_RIGHT: if (widget_data->info.field.cpos < strlen(widget_data->cdata)) { #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { unsigned char *next = widget_data->cdata + widget_data->info.field.cpos; unsigned char *end = strchr(next, '\0'); @@ -492,7 +492,7 @@ kbd_field(struct dialog_data *dlg_data, struct widget_data *widget_data) if (widget_data->info.field.cpos > 0) widget_data->info.field.cpos--; #ifdef CONFIG_UTF8 - if (widget_data->info.field.cpos && term->utf8) { + if (widget_data->info.field.cpos && term->utf8_cp) { unsigned char *t = widget_data->cdata; unsigned char *t2 = t; int p = widget_data->info.field.cpos; @@ -517,7 +517,7 @@ kbd_field(struct dialog_data *dlg_data, struct widget_data *widget_data) case ACT_EDIT_BACKSPACE: #ifdef CONFIG_UTF8 - if (widget_data->info.field.cpos && term->utf8) { + if (widget_data->info.field.cpos && term->utf8_cp) { /* XXX: stolen from src/viewer/text/form.c */ /* FIXME: This isn't nice. We remove last byte * from UTF-8 character to detect @@ -559,7 +559,7 @@ kbd_field(struct dialog_data *dlg_data, struct widget_data *widget_data) if (widget_data->info.field.cpos >= cdata_len) goto display_field; #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { unsigned char *end = widget_data->cdata + cdata_len; unsigned char *text = widget_data->cdata + widget_data->info.field.cpos; unsigned char *old = text; @@ -688,22 +688,11 @@ kbd_field(struct dialog_data *dlg_data, struct widget_data *widget_data) const unsigned char *ins; int inslen; - if (term->utf8) { - /* get_kbd_key(ev) is in UCS-4, - * and @text is in UTF-8. */ - ins = encode_utf8(get_kbd_key(ev)); - /* get_kbd_key(ev) cannot be L'\0' - * because @check_kbd_textinput_key - * would have rejected it. So it - * is OK to use @strlen below. */ - } else { - /* get_kbd_key(ev) is UCS-4, and @text - * is in the terminal's charset. */ - int cp = get_opt_codepage_tree(term->spec, - "charset"); - - ins = u2cp_no_nbsp(get_kbd_key(ev), cp); - } + /* get_kbd_key(ev) is UCS-4, and @text + * is in the terminal's charset. */ + ins = u2cp_no_nbsp(get_kbd_key(ev), + get_opt_codepage_tree(term->spec, + "charset")); inslen = strlen(ins); #endif /* CONFIG_UTF8 */ diff --git a/src/bfu/listbox.c b/src/bfu/listbox.c index 0ad32a98..0b56109a 100644 --- a/src/bfu/listbox.c +++ b/src/bfu/listbox.c @@ -463,7 +463,7 @@ display_listbox_item(struct listbox_item *item, void *data_, int *offset) len = strlen(text); int_upper_bound(&len, int_max(0, data->widget_data->box.width - depth * 5)); #ifdef CONFIG_UTF8 - if (data->term->utf8) + if (data->term->utf8_cp) len_bytes = utf8_cells2bytes(text, len, NULL); else #endif /* CONFIG_UTF8 */ diff --git a/src/bfu/menu.c b/src/bfu/menu.c index 4511a569..74b60d70 100644 --- a/src/bfu/menu.c +++ b/src/bfu/menu.c @@ -201,7 +201,7 @@ get_menuitem_text_width(struct terminal *term, struct menu_item *mi) if (!text[0]) return 0; #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) return L_TEXT_SPACE + utf8_ptr2cells(text, NULL) - !!mi->hotkey_pos + R_TEXT_SPACE; else @@ -383,7 +383,7 @@ draw_menu_left_text(struct terminal *term, unsigned char *text, int len, if (!len) return; #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { max_len = utf8_cells2bytes(text, w, NULL); if (max_len <= 0) return; @@ -431,7 +431,7 @@ draw_menu_left_text_hk(struct terminal *term, unsigned char *text, } #ifdef CONFIG_UTF8 - if (term->utf8) goto utf8; + if (term->utf8_cp) goto utf8; #endif /* CONFIG_UTF8 */ for (x = 0; x - !!hk_state < w && (c = text[x]); x++) { @@ -561,12 +561,12 @@ display_menu(struct terminal *term, struct menu *menu) draw_shadow(term, &menu->box, get_bfu_color(term, "dialog.shadow"), 2, 1); #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) fix_dwchar_around_box(term, &box, 1, 2, 1); #endif /* CONFIG_UTF8 */ } #ifdef CONFIG_UTF8 - else if(term->utf8) + else if (term->utf8_cp) fix_dwchar_around_box(term, &box, 1, 0, 0); #endif /* CONFIG_UTF8 */ @@ -1115,7 +1115,7 @@ display_mainmenu(struct terminal *term, struct menu *menu) textlen = strlen(text) - !!l; #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) screencnt = utf8_ptr2cells(text, NULL) - !!l; else #endif /* CONFIG_UTF8 */ @@ -1125,7 +1125,7 @@ display_mainmenu(struct terminal *term, struct menu *menu) color = selected_color; box.x = p; #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) box.width = L_MAINTEXT_SPACE + L_TEXT_SPACE + screencnt + R_TEXT_SPACE + R_MAINTEXT_SPACE; @@ -1164,7 +1164,7 @@ display_mainmenu(struct terminal *term, struct menu *menu) int_lower_bound(&menu->last, menu->first); if (menu->last < menu->size - 1) { #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { struct screen_char *schar; schar = get_char(term, term->width - R_MAINMENU_SPACE, 0); diff --git a/src/bfu/text.c b/src/bfu/text.c index f5e3f1b7..e8be0191 100644 --- a/src/bfu/text.c +++ b/src/bfu/text.c @@ -231,7 +231,7 @@ dlg_format_text_do(struct terminal *term, unsigned char *text, if (!*text) break; #ifdef CONFIG_UTF8 - line_width = split_line(text, width, &cells, term->utf8); + line_width = split_line(text, width, &cells, term->utf8_cp); #else line_width = split_line(text, width, &cells); #endif /* CONFIG_UTF8 */ @@ -290,7 +290,7 @@ dlg_format_text(struct terminal *term, struct widget_data *widget_data, * split if we don't have to */ #ifdef CONFIG_UTF8 if (widget_data->box.width != width - && !split_lines(widget_data, width, term->utf8)) + && !split_lines(widget_data, width, term->utf8_cp)) return; #else if (widget_data->box.width != width diff --git a/src/bfu/widget.h b/src/bfu/widget.h index 5e7d1814..68496326 100644 --- a/src/bfu/widget.h +++ b/src/bfu/widget.h @@ -52,11 +52,10 @@ struct widget { struct widget_data { struct widget *widget; - /* For WIDGET_FIELD: If CONFIG_UTF8 is defined and UTF-8 I/O - * is enabled for the terminal, then @cdata is in UTF-8; - * otherwise, @cdata is in the charset of the terminal, and - * the charset is assumed to be unibyte. (Thus, if you choose - * UTF-8 as the charset but disable UTF-8 I/O, you lose.) + /* For WIDGET_FIELD: @cdata is in the charset of the terminal. + * (That charset can be UTF-8 only if CONFIG_UTF8 is defined, + * and is assumed to be unibyte otherwise.) The UTF-8 I/O + * option has no effect here. * * For WIDGET_TEXT: @cdata is cast from/to an unsigned char ** * that points to the first element of an array. Each element diff --git a/src/config/options.inc b/src/config/options.inc index cfbedc85..f01be47b 100644 --- a/src/config/options.inc +++ b/src/config/options.inc @@ -816,6 +816,27 @@ static struct option_info config_options_info[] = { "_template_", 0, N_("Options specific to this terminal type (according to $TERM value).")), + /* TODO: Incorporate some of the following to the option text. + * + * When UTF-8 I/O is disabled: + * 0 (TERM_DUMB) outputs ASCII -+| characters. + * 1 (TERM_VT100) switches charsets with ^N and ^O. + * 2 (TERM_LINUX) outputs CP437 characters without switching + * charsets, so it works correctly only if the terminal uses + * CP437. Can also be made CP850 and CP852 compatible with + * the restrict_852 option. + * 3 (TERM_KOI8) outputs KOI8-R characters without switching + * charsets, so it works correctly only if the terminal uses + * KOI8-R and the user has selected either KOI8-R or ASCII + * in ELinks. It is also mostly compatible with KOI8-U. + * 4 (TERM_FREEBSD) outputs characters in the 0x80...0x9F + * range, which FreeBSD 4.0 (but not 5.0) treated as + * graphical. + * + * When UTF-8 I/O is enabled, ELinks outputs (almost) the same + * characters as above but encodes them in UTF-8 and does not + * switch charsets. So, it will work in any terminal that + * understands UTF-8 and has the characters in its font. */ INIT_OPT_INT("terminal._template_", N_("Type"), "type", 0, 0, 4, 0, N_("Terminal type; matters mostly only when drawing frames and\n" @@ -829,8 +850,8 @@ static struct option_info config_options_info[] = { INIT_OPT_BOOL("terminal._template_", N_("Switch fonts for line drawing"), "m11_hack", 0, 0, N_("Switch fonts when drawing lines, enabling both local characters\n" - "and lines working at the same time. Makes sense only with linux\n" - "terminal.")), + "and lines working at the same time. ELinks uses this option only if\n" + "UTF-8 I/O is disabled and the terminal type is Linux or FreeBSD.")), /* When CONFIG_UTF8 is defined, any code that reads the "utf_8_io" * option should also check whether the "codepage" option is UTF-8, diff --git a/src/config/opttypes.c b/src/config/opttypes.c index 6c02278b..bc29b225 100644 --- a/src/config/opttypes.c +++ b/src/config/opttypes.c @@ -158,10 +158,6 @@ redir_set(struct option *opt, unsigned char *str) } -static int -redir_add(struct option *opt, unsigned char *str) - wrap_or_(add, add(real, str), 0); - /* Support functions for config file parsing. */ @@ -400,21 +396,21 @@ tree_dup(struct option *opt, struct option *template) } const struct option_type_info option_types[] = { - { N_("Boolean"), bool_cmd, num_rd, num_wr, NULL, num_set, NULL, N_("[0|1]") }, - { N_("Integer"), gen_cmd, num_rd, num_wr, NULL, num_set, NULL, N_("") }, - { N_("Longint"), gen_cmd, num_rd, long_wr, NULL, long_set, NULL, N_("") }, - { N_("String"), gen_cmd, str_rd, str_wr, str_dup, str_set, NULL, N_("") }, + { N_("Boolean"), bool_cmd, num_rd, num_wr, NULL, num_set, N_("[0|1]") }, + { N_("Integer"), gen_cmd, num_rd, num_wr, NULL, num_set, N_("") }, + { N_("Longint"), gen_cmd, num_rd, long_wr, NULL, long_set, N_("") }, + { N_("String"), gen_cmd, str_rd, str_wr, str_dup, str_set, N_("") }, - { N_("Codepage"), gen_cmd, str_rd, cp_wr, NULL, cp_set, NULL, N_("") }, - { N_("Language"), gen_cmd, str_rd, lang_wr, NULL, lang_set, NULL, N_("") }, - { N_("Color"), gen_cmd, str_rd, color_wr, NULL, color_set, NULL, N_("") }, + { N_("Codepage"), gen_cmd, str_rd, cp_wr, NULL, cp_set, N_("") }, + { N_("Language"), gen_cmd, str_rd, lang_wr, NULL, lang_set, N_("") }, + { N_("Color"), gen_cmd, str_rd, color_wr, NULL, color_set, N_("") }, - { N_("Special"), exec_cmd, NULL, NULL, NULL, NULL, NULL, "" }, + { N_("Special"), exec_cmd, NULL, NULL, NULL, NULL, "" }, - { N_("Alias"), redir_cmd, redir_rd, redir_wr, NULL, redir_set, redir_add, "" }, + { N_("Alias"), redir_cmd, redir_rd, redir_wr, NULL, redir_set, "" }, /* tree */ - { N_("Folder"), NULL, NULL, NULL, tree_dup, NULL, NULL, "" }, + { N_("Folder"), NULL, NULL, NULL, tree_dup, NULL, "" }, }; unsigned char * diff --git a/src/config/opttypes.h b/src/config/opttypes.h index 84b47d68..0bbbfdb0 100644 --- a/src/config/opttypes.h +++ b/src/config/opttypes.h @@ -11,7 +11,6 @@ struct option_type_info { void (*write)(struct option *, struct string *); void (*dup)(struct option *, struct option *); int (*set)(struct option *, unsigned char *); - int (*add)(struct option *, unsigned char *); unsigned char *help_str; }; diff --git a/src/dialogs/download.c b/src/dialogs/download.c index 2d177b39..825e0b53 100644 --- a/src/dialogs/download.c +++ b/src/dialogs/download.c @@ -146,7 +146,7 @@ download_dialog_layouter(struct dialog_data *dlg_data) return; } #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) decode_uri(url); else #endif /* CONFIG_UTF8 */ @@ -303,7 +303,7 @@ get_file_download_text(struct listbox_item *item, struct terminal *term) uristring = get_uri_string(file_download->uri, URI_PUBLIC); if (uristring) { #ifdef CONFIG_UTF8 - if (term->utf8) + if (term->utf8_cp) decode_uri(uristring); else #endif /* CONFIG_UTF8 */ diff --git a/src/dialogs/menu.c b/src/dialogs/menu.c index 615e66e3..0707b980 100644 --- a/src/dialogs/menu.c +++ b/src/dialogs/menu.c @@ -586,7 +586,7 @@ query_file(struct session *ses, struct uri *uri, void *data, /* Remove the %-ugliness for display */ #ifdef CONFIG_UTF8 - if (ses->tab->term->utf8) + if (ses->tab->term->utf8_cp) decode_uri_string(&def); else #endif /* CONFIG_UTF8 */ diff --git a/src/dialogs/status.c b/src/dialogs/status.c index 84a2c1c0..cfe14609 100644 --- a/src/dialogs/status.c +++ b/src/dialogs/status.c @@ -427,7 +427,7 @@ display_title_bar(struct session *ses, struct terminal *term) int titlelen, titlewidth; #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { titlewidth = utf8_ptr2cells(document->title, NULL); titlewidth = int_min(titlewidth, maxlen); @@ -452,7 +452,7 @@ display_title_bar(struct session *ses, struct terminal *term) if (title.length) { int x; #ifdef CONFIG_UTF8 - if (term->utf8) { + if (term->utf8_cp) { x = int_max(term->width - 1 - utf8_ptr2cells(title.source, title.source diff --git a/src/document/css/apply.c b/src/document/css/apply.c index b4400edd..f39e84a0 100644 --- a/src/document/css/apply.c +++ b/src/document/css/apply.c @@ -186,7 +186,7 @@ examine_element(struct html_context *html_context, struct css_selector *base, process_found_selector(selector, CST_PSEUDO, base); } - code = get_attr_val(element->options, "class", html_context->options->cp); + code = get_attr_val(element->options, "class", html_context->doc_cp); if (code && seltype <= CST_CLASS) { unsigned char *class = code; @@ -203,7 +203,7 @@ examine_element(struct html_context *html_context, struct css_selector *base, } mem_free_if(code); - code = get_attr_val(element->options, "id", html_context->options->cp); + code = get_attr_val(element->options, "id", html_context->doc_cp); if (code && seltype <= CST_ID) { selector = find_css_selector(selectors, CST_ID, rel, code, -1); process_found_selector(selector, CST_ID, base); @@ -240,7 +240,7 @@ get_css_selector_for_element(struct html_context *html_context, DBG("Element %.*s applied.", element->namelen, element->name); #endif - code = get_attr_val(element->options, "style", html_context->options->cp); + code = get_attr_val(element->options, "style", html_context->doc_cp); if (code) { struct css_selector *stylesel; struct scanner scanner; diff --git a/src/document/forms.h b/src/document/forms.h index 55934afe..0762fa5c 100644 --- a/src/document/forms.h +++ b/src/document/forms.h @@ -86,6 +86,10 @@ struct form_control { unsigned char *id; /* used by scripts */ unsigned char *name; unsigned char *alt; + /* For FC_TEXT, FC_PASSWORD, and FC_TEXTAREA: @default_value + * is in the charset of the document. + * + * For FC_FILE: The parser does not set @default_value. */ unsigned char *default_value; int default_state; int size; @@ -94,12 +98,11 @@ struct form_control { int maxlength; int nvalues; unsigned char **values; - /* For FC_SELECT: If CONFIG_UTF8 is defined and UTF-8 I/O is - * enabled for the terminal, then @labels is in UTF-8; - * otherwise, @labels is in the charset of the terminal, and - * the charset is assumed to be unibyte. (Thus, if you choose - * UTF-8 as the charset but disable UTF-8 I/O, you lose.) The - * charset of the document has no effect here. */ + /* For FC_SELECT: @labels are in the charset of the terminal. + * (That charset can be UTF-8 only if CONFIG_UTF8 is defined, + * and is assumed to be unibyte otherwise.) The charset of + * the document and the UTF-8 I/O option have no effect + * here. */ unsigned char **labels; struct menu_item *menu; }; diff --git a/src/document/html/internal.h b/src/document/html/internal.h index 89a56df1..419da38f 100644 --- a/src/document/html/internal.h +++ b/src/document/html/internal.h @@ -51,6 +51,10 @@ struct html_context { struct document_options *options; + /* doc_cp is the charset of the document, i.e. part->document->cp. + * It is copied here because part->document is NULL sometimes. */ + int doc_cp; + /* For: * html/parser/parse.c * html/parser/stack.c diff --git a/src/document/html/parser.c b/src/document/html/parser.c index ca25f8ed..8732de7e 100644 --- a/src/document/html/parser.c +++ b/src/document/html/parser.c @@ -57,7 +57,7 @@ get_color(struct html_context *html_context, unsigned char *a, if (!use_document_fg_colors(html_context->options)) return -1; - at = get_attr_val(a, c, html_context->options->cp); + at = get_attr_val(a, c, html_context->doc_cp); if (!at) return -1; r = decode_color(at, strlen(at), rgb); @@ -78,6 +78,8 @@ get_bgcolor(struct html_context *html_context, unsigned char *a, color_T *rgb) unsigned char * get_target(struct document_options *options, unsigned char *a) { + /* FIXME (bug 784): options->cp is the terminal charset; + * should use the document charset instead. */ unsigned char *v = get_attr_val(a, "target", options->cp); if (!v) return NULL; @@ -154,7 +156,7 @@ set_fragment_identifier(struct html_context *html_context, { unsigned char *id_attr; - id_attr = get_attr_val(attr_name, attr, html_context->options->cp); + id_attr = get_attr_val(attr_name, attr, html_context->doc_cp); if (id_attr) { html_context->special_f(html_context, SP_TAG, id_attr); @@ -235,7 +237,7 @@ html_focusable(struct html_context *html_context, unsigned char *a) if (!a) return; options = html_context->options; - cp = options->cp; + cp = html_context->doc_cp; accesskey = get_attr_val(a, "accesskey", cp); if (accesskey) { @@ -243,7 +245,7 @@ html_focusable(struct html_context *html_context, unsigned char *a) mem_free(accesskey); } - tabindex = get_num(a, "tabindex", options->cp); + tabindex = get_num(a, "tabindex", html_context->doc_cp); if (0 < tabindex && tabindex < 32767) { format.tabindex = (tabindex & 0x7fff) << 16; } @@ -450,6 +452,8 @@ look_for_map(unsigned char **pos, unsigned char *eof, struct uri *uri, if (strlcasecmp(name, namelen, "MAP", 3)) return 1; if (uri && uri->fragment) { + /* FIXME (bug 784): options->cp is the terminal charset; + * should use the document charset instead. */ al = get_attr_val(attr, "name", options->cp); if (!al) return 1; @@ -548,6 +552,8 @@ look_for_link(unsigned char **pos, unsigned char *eof, struct menu_item **menu, if (*pos >= eof) return 0; } else if (!strlcasecmp(name, namelen, "AREA", 4)) { + /* FIXME (bug 784): options->cp is the terminal charset; + * should use the document charset instead. */ unsigned char *alt = get_attr_val(attr, "alt", options->cp); if (alt) { @@ -582,6 +588,8 @@ look_for_link(unsigned char **pos, unsigned char *eof, struct menu_item **menu, return 1; } + /* FIXME (bug 784): options->cp is the terminal charset; + * should use the document charset instead. */ href = get_url_val(attr, "href", options->cp); if (!href) { mem_free_if(label); @@ -741,6 +749,9 @@ done_html_parser_state(struct html_context *html_context, } +/* This function does not set html_context.doc_cp = document.cp, + * because it does not know the document, and because the codepage has + * not even been decided when it is called. */ struct html_context * init_html_parser(struct uri *uri, struct document_options *options, unsigned char *start, unsigned char *end, diff --git a/src/document/html/parser/forms.c b/src/document/html/parser/forms.c index 51f975d1..1a717a8b 100644 --- a/src/document/html/parser/forms.c +++ b/src/document/html/parser/forms.c @@ -50,13 +50,13 @@ html_form(struct html_context *html_context, unsigned char *a, form->method = FORM_METHOD_GET; form->form_num = a - html_context->startf; - al = get_attr_val(a, "method", html_context->options->cp); + al = get_attr_val(a, "method", html_context->doc_cp); if (al) { if (!strcasecmp(al, "post")) { unsigned char *enctype; enctype = get_attr_val(a, "enctype", - html_context->options->cp); + html_context->doc_cp); form->method = FORM_METHOD_POST; if (enctype) { @@ -69,11 +69,11 @@ html_form(struct html_context *html_context, unsigned char *a, } mem_free(al); } - form->onsubmit = get_attr_val(a, "onsubmit", html_context->options->cp); - al = get_attr_val(a, "name", html_context->options->cp); + form->onsubmit = get_attr_val(a, "onsubmit", html_context->doc_cp); + al = get_attr_val(a, "name", html_context->doc_cp); if (al) form->name = al; - al = get_attr_val(a, "action", html_context->options->cp); + al = get_attr_val(a, "action", html_context->doc_cp); /* The HTML specification at * http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.3 states * that the behavior of an empty action attribute should be undefined. @@ -114,10 +114,10 @@ html_form(struct html_context *html_context, unsigned char *a, static int get_form_mode(struct html_context *html_context, unsigned char *attr) { - if (has_attr(attr, "disabled", html_context->options->cp)) + if (has_attr(attr, "disabled", html_context->doc_cp)) return FORM_MODE_DISABLED; - if (has_attr(attr, "readonly", html_context->options->cp)) + if (has_attr(attr, "readonly", html_context->doc_cp)) return FORM_MODE_READONLY; return FORM_MODE_NORMAL; @@ -146,8 +146,7 @@ html_button(struct html_context *html_context, unsigned char *a, unsigned char *al; struct form_control *fc; enum form_type type = FC_SUBMIT; - int cp = (html_context->part && html_context->part->document) ? - html_context->part->document->cp : html_context->options->cp; + int cp = html_context->doc_cp; html_focusable(html_context, a); @@ -197,7 +196,7 @@ html_input_format(struct html_context *html_context, unsigned char *a, html_focusable(html_context, a); format.form = fc; if (format.title) mem_free(format.title); - format.title = get_attr_val(a, "title", html_context->options->cp); + format.title = get_attr_val(a, "title", html_context->doc_cp); switch (fc->type) { case FC_TEXT: case FC_PASSWORD: @@ -223,10 +222,10 @@ html_input_format(struct html_context *html_context, unsigned char *a, unsigned char *al; mem_free_set(&format.image, NULL); - al = get_url_val(a, "src", html_context->options->cp); + al = get_url_val(a, "src", html_context->doc_cp); if (!al) al = get_url_val(a, "dynsrc", - html_context->options->cp); + html_context->doc_cp); if (al) { format.image = join_urls(html_context->base_href, al); mem_free(al); @@ -267,8 +266,7 @@ html_input(struct html_context *html_context, unsigned char *a, { unsigned char *al; struct form_control *fc; - int cp = (html_context->part && html_context->part->document) ? - html_context->part->document->cp : html_context->options->cp; + int cp = html_context->doc_cp; fc = init_form_control(FC_TEXT, a, html_context); if (!fc) return; @@ -421,18 +419,18 @@ abort: if (!closing_tag) { unsigned char *value, *label; - if (has_attr(t_attr, "disabled", html_context->options->cp)) + if (has_attr(t_attr, "disabled", html_context->doc_cp)) goto see; if (preselect == -1 - && has_attr(t_attr, "selected", html_context->options->cp)) + && has_attr(t_attr, "selected", html_context->doc_cp)) preselect = order; - value = get_attr_val(t_attr, "value", html_context->options->cp); + value = get_attr_val(t_attr, "value", html_context->doc_cp); if (!mem_align_alloc(&values, order, order + 1, 0xFF)) goto abort; values[order++] = value; - label = get_attr_val(t_attr, "label", html_context->options->cp); + label = get_attr_val(t_attr, "label", html_context->doc_cp); if (label) new_menu_item(&lnk_menu, label, order - 1, 0); if (!value || !label) { init_string(&lbl); @@ -452,7 +450,7 @@ abort: if (!closing_tag) { unsigned char *label; - label = get_attr_val(t_attr, "label", html_context->options->cp); + label = get_attr_val(t_attr, "label", html_context->doc_cp); if (!label) { label = stracpy(""); @@ -479,8 +477,8 @@ end_parse: goto abort; } - fc->id = get_attr_val(attr, "id", html_context->options->cp); - fc->name = get_attr_val(attr, "name", html_context->options->cp); + fc->id = get_attr_val(attr, "id", html_context->doc_cp); + fc->name = get_attr_val(attr, "name", html_context->doc_cp); fc->default_state = preselect < 0 ? 0 : preselect; fc->default_value = order ? stracpy(values[fc->default_state]) : stracpy(""); fc->nvalues = order; @@ -520,13 +518,13 @@ do_html_select_multiple(struct html_context *html_context, unsigned char *a, unsigned char *html, unsigned char *eof, unsigned char **end) { - unsigned char *al = get_attr_val(a, "name", html_context->options->cp); + unsigned char *al = get_attr_val(a, "name", html_context->doc_cp); if (!al) return; html_focusable(html_context, a); html_top->type = ELEMENT_DONT_KILL; mem_free_set(&format.select, al); - format.select_disabled = has_attr(a, "disabled", html_context->options->cp) + format.select_disabled = has_attr(a, "disabled", html_context->doc_cp) ? FORM_MODE_DISABLED : FORM_MODE_NORMAL; } @@ -535,7 +533,7 @@ void html_select(struct html_context *html_context, unsigned char *a, unsigned char *html, unsigned char *eof, unsigned char **end) { - if (has_attr(a, "multiple", html_context->options->cp)) + if (has_attr(a, "multiple", html_context->doc_cp)) do_html_select_multiple(html_context, a, html, eof, end); else do_html_select(a, html, eof, end, html_context); @@ -551,7 +549,7 @@ html_option(struct html_context *html_context, unsigned char *a, if (!format.select) return; - val = get_attr_val(a, "value", html_context->options->cp); + val = get_attr_val(a, "value", html_context->doc_cp); if (!val) { struct string str; unsigned char *p, *r; @@ -602,11 +600,11 @@ end_parse: return; } - fc->id = get_attr_val(a, "id", html_context->options->cp); + fc->id = get_attr_val(a, "id", html_context->doc_cp); fc->name = null_or_stracpy(format.select); fc->default_value = val; - fc->default_state = has_attr(a, "selected", html_context->options->cp); - fc->mode = has_attr(a, "disabled", html_context->options->cp) + fc->default_state = has_attr(a, "selected", html_context->doc_cp); + fc->mode = has_attr(a, "disabled", html_context->doc_cp) ? FORM_MODE_DISABLED : format.select_disabled; @@ -648,9 +646,11 @@ pp: fc = init_form_control(FC_TEXTAREA, attr, html_context); if (!fc) return; - fc->id = get_attr_val(attr, "id", html_context->options->cp); - fc->name = get_attr_val(attr, "name", html_context->options->cp); - fc->default_value = memacpy(html, p - html); + fc->id = get_attr_val(attr, "id", html_context->doc_cp); + fc->name = get_attr_val(attr, "name", html_context->doc_cp); + fc->default_value = convert_string(NULL, html, p - html, + html_context->doc_cp, + CSM_DEFAULT, NULL, NULL, NULL); for (p = fc->default_value; p && p[0]; p++) { /* FIXME: We don't cope well with entities here. Bugzilla uses * inside of textarea and we fail miserably upon that @@ -658,7 +658,7 @@ pp: if (p[0] == '\r') { if (p[1] == '\n' || (p > fc->default_value && p[-1] == '\n')) { - memcpy(p, p + 1, strlen(p)); + memmove(p, p + 1, strlen(p)); p--; } else { p[0] = '\n'; @@ -666,7 +666,7 @@ pp: } } - cols = get_num(attr, "cols", html_context->options->cp); + cols = get_num(attr, "cols", html_context->doc_cp); if (cols <= 0) cols = html_context->options->default_form_input_size; cols++; /* Add 1 column, other browsers may have different @@ -675,14 +675,14 @@ pp: cols = html_context->options->box.width; fc->cols = cols; - rows = get_num(attr, "rows", html_context->options->cp); + rows = get_num(attr, "rows", html_context->doc_cp); if (rows <= 0) rows = 1; if (rows > html_context->options->box.height) rows = html_context->options->box.height; fc->rows = rows; html_context->options->needs_height = 1; - wrap_attr = get_attr_val(attr, "wrap", html_context->options->cp); + wrap_attr = get_attr_val(attr, "wrap", html_context->doc_cp); if (wrap_attr) { if (!strcasecmp(wrap_attr, "hard") || !strcasecmp(wrap_attr, "physical")) { @@ -696,14 +696,14 @@ pp: } mem_free(wrap_attr); - } else if (has_attr(attr, "nowrap", html_context->options->cp)) { + } else if (has_attr(attr, "nowrap", html_context->doc_cp)) { fc->wrap = FORM_WRAP_NONE; } else { fc->wrap = FORM_WRAP_SOFT; } - fc->maxlength = get_num(attr, "maxlength", html_context->options->cp); + fc->maxlength = get_num(attr, "maxlength", html_context->doc_cp); if (fc->maxlength == -1) fc->maxlength = INT_MAX; if (rows > 1) ln_break(html_context, 1); diff --git a/src/document/html/parser/general.c b/src/document/html/parser/general.c index 2998a312..b28506e4 100644 --- a/src/document/html/parser/general.c +++ b/src/document/html/parser/general.c @@ -136,7 +136,7 @@ void html_font(struct html_context *html_context, unsigned char *a, unsigned char *xxx3, unsigned char *xxx4, unsigned char **xxx5) { - unsigned char *al = get_attr_val(a, "size", html_context->options->cp); + unsigned char *al = get_attr_val(a, "size", html_context->doc_cp); if (al) { int p = 0; @@ -223,7 +223,7 @@ html_script(struct html_context *html_context, unsigned char *a, /* Ref: * http://www.ietf.org/internet-drafts/draft-hoehrmann-script-types-03.txt */ - type = get_attr_val(a, "type", html_context->options->cp); + type = get_attr_val(a, "type", html_context->doc_cp); if (type) { unsigned char *pos = type; @@ -265,7 +265,7 @@ not_processed: * language attribute can be JavaScript with optional version digits * postfixed (like: ``JavaScript1.1''). * That attribute is deprecated in favor of type by HTML 4.01 */ - language = get_attr_val(a, "language", html_context->options->cp); + language = get_attr_val(a, "language", html_context->doc_cp); if (language) { int languagelen = strlen(language); @@ -280,7 +280,7 @@ not_processed: } if (html_context->part->document - && (src = get_attr_val(a, "src", html_context->options->cp))) { + && (src = get_attr_val(a, "src", html_context->doc_cp))) { /* External reference. */ unsigned char *import_url; @@ -479,7 +479,7 @@ void html_linebrk(struct html_context *html_context, unsigned char *a, unsigned char *xxx3, unsigned char *xxx4, unsigned char **xxx5) { - unsigned char *al = get_attr_val(a, "align", html_context->options->cp); + unsigned char *al = get_attr_val(a, "align", html_context->doc_cp); if (al) { if (!strcasecmp(al, "left")) par_format.align = ALIGN_LEFT; @@ -632,7 +632,7 @@ html_hr(struct html_context *html_context, unsigned char *a, { int i/* = par_format.width - 10*/; unsigned char r = (unsigned char) BORDER_DHLINE; - int q = get_num(a, "size", html_context->options->cp); + int q = get_num(a, "size", html_context->doc_cp); if (q >= 0 && q < 2) r = (unsigned char) BORDER_SHLINE; html_stack_dup(html_context, ELEMENT_KILLABLE); @@ -714,7 +714,7 @@ html_base(struct html_context *html_context, unsigned char *a, { unsigned char *al; - al = get_url_val(a, "href", html_context->options->cp); + al = get_url_val(a, "href", html_context->doc_cp); if (al) { unsigned char *base = join_urls(html_context->base_href, al); struct uri *uri = base ? get_uri(base, 0) : NULL; @@ -743,7 +743,7 @@ html_ul(struct html_context *html_context, unsigned char *a, par_format.list_number = 0; par_format.flags = P_STAR; - al = get_attr_val(a, "type", html_context->options->cp); + al = get_attr_val(a, "type", html_context->doc_cp); if (al) { if (!strcasecmp(al, "disc") || !strcasecmp(al, "circle")) par_format.flags = P_O; @@ -767,12 +767,12 @@ html_ol(struct html_context *html_context, unsigned char *a, int st; par_format.list_level++; - st = get_num(a, "start", html_context->options->cp); + st = get_num(a, "start", html_context->doc_cp); if (st == -1) st = 1; par_format.list_number = st; par_format.flags = P_NUMBER; - al = get_attr_val(a, "type", html_context->options->cp); + al = get_attr_val(a, "type", html_context->doc_cp); if (al) { if (*al && !al[1]) { if (*al == '1') par_format.flags = P_NUMBER; @@ -875,7 +875,7 @@ html_li(struct html_context *html_context, unsigned char *a, unsigned char n[32]; int nlen; int t = par_format.flags & P_LISTMASK; - int s = get_num(a, "value", html_context->options->cp); + int s = get_num(a, "value", html_context->doc_cp); if (s != -1) par_format.list_number = s; @@ -932,7 +932,7 @@ html_dl(struct html_context *html_context, unsigned char *a, unsigned char *xxx3, unsigned char *xxx4, unsigned char **xxx5) { par_format.flags &= ~P_COMPACT; - if (has_attr(a, "compact", html_context->options->cp)) + if (has_attr(a, "compact", html_context->doc_cp)) par_format.flags |= P_COMPACT; if (par_format.list_level) par_format.leftmargin += 5; par_format.list_level++; @@ -954,7 +954,7 @@ html_dt(struct html_context *html_context, unsigned char *a, par_format.align = ALIGN_LEFT; par_format.leftmargin = par_format.dd_margin; if (!(par_format.flags & P_COMPACT) - && !has_attr(a, "compact", html_context->options->cp)) + && !has_attr(a, "compact", html_context->doc_cp)) ln_break(html_context, 2); } @@ -995,7 +995,7 @@ html_frame(struct html_context *html_context, unsigned char *a, { unsigned char *name, *src, *url; - src = get_url_val(a, "src", html_context->options->cp); + src = get_url_val(a, "src", html_context->doc_cp); if (!src) { url = stracpy("about:blank"); } else { @@ -1004,7 +1004,7 @@ html_frame(struct html_context *html_context, unsigned char *a, } if (!url) return; - name = get_attr_val(a, "name", html_context->options->cp); + name = get_attr_val(a, "name", html_context->doc_cp); if (!name) { name = stracpy(url); } else if (!name[0]) { @@ -1048,13 +1048,13 @@ html_frameset(struct html_context *html_context, unsigned char *a, || !html_context->special_f(html_context, SP_USED, NULL)) return; - cols = get_attr_val(a, "cols", html_context->options->cp); + cols = get_attr_val(a, "cols", html_context->doc_cp); if (!cols) { cols = stracpy("100%"); if (!cols) return; } - rows = get_attr_val(a, "rows", html_context->options->cp); + rows = get_attr_val(a, "rows", html_context->doc_cp); if (!rows) { rows = stracpy("100%"); if (!rows) { diff --git a/src/document/html/parser/link.c b/src/document/html/parser/link.c index 1c7911ff..8ac09a63 100644 --- a/src/document/html/parser/link.c +++ b/src/document/html/parser/link.c @@ -45,7 +45,7 @@ html_a(struct html_context *html_context, unsigned char *a, { unsigned char *href; - href = get_url_val(a, "href", html_context->options->cp); + href = get_url_val(a, "href", html_context->doc_cp); if (href) { unsigned char *target; @@ -84,7 +84,7 @@ html_a(struct html_context *html_context, unsigned char *a, } mem_free_set(&format.title, - get_attr_val(a, "title", html_context->options->cp)); + get_attr_val(a, "title", html_context->doc_cp)); html_focusable(html_context, a); @@ -215,8 +215,6 @@ html_img_do(unsigned char *a, unsigned char *object_src, unsigned char *usemap_attr; struct document_options *options = html_context->options; int display_style = options->image_link.display_style; - int cp = (html_context->part && html_context->part->document) ? - html_context->part->document->cp : html_context->options->cp; /* Note about display_style: * 0 means always display IMG @@ -224,7 +222,7 @@ html_img_do(unsigned char *a, unsigned char *object_src, * 2 means display alt/title attribute if possible, IMG if not * 3 means display alt/title attribute if possible, filename if not */ - usemap_attr = get_attr_val(a, "usemap", options->cp); + usemap_attr = get_attr_val(a, "usemap", html_context->doc_cp); if (usemap_attr) { unsigned char *joined_urls = join_urls(html_context->base_href, usemap_attr); @@ -245,13 +243,13 @@ html_img_do(unsigned char *a, unsigned char *object_src, } ismap = format.link - && has_attr(a, "ismap", options->cp) + && has_attr(a, "ismap", html_context->doc_cp) && !usemap; if (display_style == 2 || display_style == 3) { - label = get_attr_val(a, "alt", cp); + label = get_attr_val(a, "alt", html_context->doc_cp); if (!label) - label = get_attr_val(a, "title", options->cp); + label = get_attr_val(a, "title", html_context->doc_cp); /* Little hack to preserve rendering of [ ], in directories listing, * but we still want to drop extra spaces in alt or title attribute @@ -260,8 +258,8 @@ html_img_do(unsigned char *a, unsigned char *object_src, } src = null_or_stracpy(object_src); - if (!src) src = get_url_val(a, "src", options->cp); - if (!src) src = get_url_val(a, "dynsrc", options->cp); + if (!src) src = get_url_val(a, "src", html_context->doc_cp); + if (!src) src = get_url_val(a, "dynsrc", html_context->doc_cp); /* If we have no label yet (no title or alt), so * just use default ones, or image filename. */ @@ -322,7 +320,7 @@ html_img_do(unsigned char *a, unsigned char *object_src, format.image = join_urls(html_context->base_href, src); } - format.title = get_attr_val(a, "title", options->cp); + format.title = get_attr_val(a, "title", html_context->doc_cp); if (ismap) { unsigned char *new_link; @@ -370,6 +368,14 @@ put_link_line(unsigned char *prefix, unsigned char *linkname, format.link = join_urls(html_context->base_href, link); format.target = stracpy(target); format.style.fg = format.clink; + /* FIXME: linkname typically comes from get_attr_val, which + * has already converted it from the document charset to the + * terminal charset and expanded character entity references. + * The following put_chrs call again converts the characters + * and expands entity references. So if we have + * + * then ELinks will display "foo?<" rather than "foo?<". + * This was mentioned in bug 213. */ put_chrs(html_context, linkname, strlen(linkname)); ln_break(html_context, 1); pop_html_element(html_context); @@ -382,10 +388,10 @@ html_applet(struct html_context *html_context, unsigned char *a, { unsigned char *code, *alt; - code = get_url_val(a, "code", html_context->options->cp); + code = get_url_val(a, "code", html_context->doc_cp); if (!code) return; - alt = get_attr_val(a, "alt", html_context->options->cp); + alt = get_attr_val(a, "alt", html_context->doc_cp); html_focusable(html_context, a); @@ -408,11 +414,11 @@ html_iframe_do(unsigned char *a, unsigned char *object_src, unsigned char *name, *url = NULL; url = null_or_stracpy(object_src); - if (!url) url = get_url_val(a, "src", html_context->options->cp); + if (!url) url = get_url_val(a, "src", html_context->doc_cp); if (!url) return; - name = get_attr_val(a, "name", html_context->options->cp); - if (!name) name = get_attr_val(a, "id", html_context->options->cp); + name = get_attr_val(a, "name", html_context->doc_cp); + if (!name) name = get_attr_val(a, "id", html_context->doc_cp); if (!name) name = stracpy(""); if (!name) { mem_free(url); @@ -450,11 +456,11 @@ html_object(struct html_context *html_context, unsigned char *a, * this, which is anyway in the spirit of element, unifying * and