diff --git a/doc/.gitignore b/doc/.gitignore index 44553d96..23b7e753 100644 --- a/doc/.gitignore +++ b/doc/.gitignore @@ -1,5 +1,12 @@ -html -pdf -txt -web +api *.tmp +*.html +*.pdf +*.xml +*.1 +*.5 +command-options.txt +import-features.conf.txt +keymap-actions.txt +keymap-defaults.txt +manual.html-chunked diff --git a/doc/Makefile b/doc/Makefile index 2ac3778e..3e8fa66e 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -3,51 +3,19 @@ include $(top_builddir)/Makefile.config SUBDIRS = man -HTML_DIR = $(DESTDIR)html -MAN_DIR = $(DESTDIR)man -PDF_DIR = $(DESTDIR)pdf -XML_DIR = $(DESTDIR)xml +VPATH = $(builddir):$(srcdir):$(top_srcdir)/contrib/perl -# Keep generated .txt files relative to the source directory -# and files they are included in. -TXT_DIR = $(top_srcdir)/doc/txt - -DOC_DIRS = \ - $(HTML_DIR) \ - $(HTML_DIR)/api \ - $(MAN_DIR)/man1 \ - $(MAN_DIR)/man5 \ - $(TXT_DIR) \ - $(XML_DIR) +#export PATH="tools:$(PATH)" # TODO: perl.pod should be pod2ized during make install. --pasky -# XXX: manual.txt is the master document and must be first. -MANUAL_FILES = \ - manual.txt \ - \ - bookmarks.txt \ - ecmascript.txt \ - exmode.txt \ - faq.txt \ - installation.txt \ - introduction.txt \ - lua-scripting.txt \ - mailcap.txt \ - marks.txt \ - mime.txt \ - remote.txt \ - small.txt \ - tabs.txt \ - terminals.txt \ - urlshortcuts.txt - ### Script Dependencies # ELINKS = $(top_builddir)/src/elinks -KBDBIND = $(top_srcdir)/src/config/kbdbind.c FEATURES = $(top_srcdir)/features.conf +KBDBIND = $(top_srcdir)/src/config/kbdbind.c + ### Locale env vars to override system one to ensure commands # using elinks binary will generate texts in english @@ -60,11 +28,36 @@ LOCALES = LC_ALL=C LANGUAGE=en CODE2DOC = $(top_srcdir)/doc/tools/code2doc HELP2DOC = $(top_srcdir)/doc/tools/help2doc IMPORT_FEATURES_CONF = $(top_srcdir)/doc/tools/import-features.conf -MAKE_ELINKS_MANPAGE = $(top_srcdir)/doc/tools/make-elinks-manpage -MAKE_ELINKSKEYS_MANPAGE = $(top_srcdir)/doc/tools/make-elinkskeys-manpage + +TXT_DOCS = \ + bookmarks.txt \ + ecmascript.txt \ + elinks.1.txt \ + elinkskeys.5.txt \ + exmode.txt \ + faq.txt \ + installation.txt \ + introduction.txt \ + lua-scripting.txt \ + mailcap.txt \ + manual.txt \ + marks.txt \ + mime.txt \ + remote.txt \ + small.txt \ + tabs.txt \ + terminals.txt \ + urlshortcuts.txt + +GEN_TXT_DOCS = \ + command-options.txt \ + import-features.conf.txt \ + keymap-defaults.txt \ + keymap-actions.txt + +TXT_DOCS += $(GEN_TXT_DOCS) HTML_DOCS-$(CONFIG_ASCIIDOC) += \ - api/dom.html \ elinks.1.html \ elinkskeys.5.html \ hacking.html \ @@ -75,117 +68,120 @@ HTML_DOCS-$(CONFIG_XMLTO) += \ HTML_DOCS-$(CONFIG_POD2HTML) += \ perl.html \ - perl-hooks.html + perl-hooks.html \ MAN_DOCS-$(CONFIG_XMLTO) += \ - man1/elinks.1.in \ - man5/elinkskeys.5 + elinks.1 \ + elinkskeys.5 # Only jw is used for generating PDF. PDF_DOCS-$(CONFIG_JW) += \ manual.pdf -MAN_DOCS += man5/elinks.conf.5 - -MAN_DOCS += $(MAN_DOCS-yes) -HTML_DOCS += $(HTML_DOCS-yes) -PDF_DOCS += $(PDF_DOCS-yes) - -man-docs: doc-dirs $(addprefix $(MAN_DIR)/,$(MAN_DOCS)) -html-docs: doc-dirs $(addprefix $(HTML_DIR)/,$(HTML_DOCS)) -pdf-docs: doc-dirs $(addprefix $(PDF_DIR)/,$(PDF_DOCS)) - -all-docs: man-docs html-docs pdf-docs - -### Build Rules -# - -doc-dirs: - $(INSTALL) -d $(DOC_DIRS) - -# $(MAN_DIR) intentionally left out -clean-local: - @$(RM) -r $(HTML_DIR) $(XML_DIR) $(TXT_DIR) $(PDF_DIR) *.tmp - - -# Autogenerated asciidoc files. - -$(TXT_DIR)/import-features.conf.txt: $(FEATURES) $(IMPORT_FEATURES_CONF) - $(IMPORT_FEATURES_CONF) > $@ - -$(TXT_DIR)/elinks.1.%.txt: $(MAKE_ELINKS_MANPAGE) $(ELINKS) $(HELP2DOC) Makefile - $(LOCALES) $(MAKE_ELINKS_MANPAGE) $@ $(ELINKS) $(HELP2DOC) > $@ - -$(TXT_DIR)/elinkskeys.5.%.txt: $(MAKE_ELINKSKEYS_MANPAGE) $(KBDBIND) Makefile - $(LOCALES) $(MAKE_ELINKSKEYS_MANPAGE) $@ $(KBDBIND) > $@ - - -# Man Pages - -$(XML_DIR)/%.man.xml: $(TXT_DIR)/%.man.txt - $(ASCIIDOC) -b docbook -d manpage -o $@ $< - -$(MAN_DIR)/man1/elinks.1.in: $(XML_DIR)/elinks.1.man.xml - $(XMLTO) -o $(MAN_DIR)/man1 man $< - sed 's/^\.TH "ELINKS" 1 .*/.TH "ELINKS" 1 "The ELinks text-browser" "$(shell date -I)" "The ELinks text-browser"/' \ - < $(MAN_DIR)/man1/elinks.1 > $@ - rm $(MAN_DIR)/man1/elinks.1 - -$(MAN_DIR)/man5/elinkskeys.5: $(XML_DIR)/elinkskeys.5.man.xml - $(XMLTO) -o $(MAN_DIR)/man5 man $< - sed -e 's/\\fI\\fR'\''/\\fI\\'\''\\fR/' < $@ > $@.tmp - sed 's/^\.TH "ELINKSKEYS" 5 .*/.TH "ELINKSKEYS" 5 "ELinks keybindings" "$(shell date -I)" "ELinks keybindings"/' \ - < $@.tmp > $@ - rm $@.tmp - -$(MAN_DIR)/man5/elinks.conf.5: $(ELINKS) $(HELP2DOC) Makefile - $(LOCALES) $(HELP2DOC) --elinks=$(ELINKS) --elinksconf > $@ - -# XHTML/CSS Man Pages - -$(HTML_DIR)/%.html: $(TXT_DIR)/%.html.txt - $(ASCIIDOC) -b xhtml11 -d manpage -o $@ $< - -# The Manual - -MANUAL_EXTRA_FILES = \ - $(TXT_DIR)/import-features.conf.txt \ - $(TXT_DIR)/elinks.1.html.txt \ - $(TXT_DIR)/elinkskeys.5.html.txt - -$(HTML_DIR)/manual.html: $(MANUAL_FILES) $(MANUAL_EXTRA_FILES) - $(ASCIIDOC) -b xhtml11 -d book -o $@ -n $< - -$(HTML_DIR)/hacking.html: $(top_srcdir)/doc/hacking.txt - $(ASCIIDOC) -b xhtml11 -d book -o $@ -n $< - -$(HTML_DIR)/dev-intro.html: $(top_srcdir)/doc/dev-intro.txt - $(ASCIIDOC) -b xhtml11 -d book -o $@ -n $< - -$(XML_DIR)/manual.xml: $(MANUAL_FILES) $(MANUAL_EXTRA_FILES) - $(ASCIIDOC) -b docbook -d book -o $@ $< - -$(HTML_DIR)/manual.html-chunked: $(XML_DIR)/manual.xml - $(XMLTO) -o $@ html $< - -$(PDF_DIR)/manual.pdf: $(XML_DIR)/manual.xml - $(JW) -o $(PDF_DIR) -b pdf $< - -$(HTML_DIR)/perl.html: $(top_srcdir)/doc/perl.pod - $(POD2HTML) --outfile=$@ < $< - -$(HTML_DIR)/perl-hooks.html: $(top_srcdir)/contrib/perl/hooks.pl - $(POD2HTML) --outfile=$@ < $< +MAN_DOCS += elinks.conf.5 ## API Docs # -DOM_API = \ - $(top_srcdir)/src/dom/scanner.h \ - $(top_srcdir)/src/dom/stack.h \ - $(top_srcdir)/src/dom/sgml/parser.h +API = $(shell find $(top_srcdir)/src/ -name '*.h' -exec grep -q 'API Doc' \{\} \; -printf "%p " | sort) -$(HTML_DIR)/api/dom.html: $(DOM_API) - $(CODE2DOC) $(DOM_API) | $(ASCIIDOC) -f code2doc.conf -b xhtml11 -d book -o $@ -n - +define api_doc +api/$(2).txt: $(1) + @$(CODE2DOC) $(1) > $$@ +API_TXT += api/$(2).txt +endef + +$(foreach api,$(API),$(eval $(call api_doc,$(api),$(shell sed -n 's/.*API Doc\s*::\s*\([^ ]*\).*/\1/p' < $(api)),))) + + +## Se the default doc rules + +MAN_DOCS = elinks.conf.5 $(MAN_DOCS-yes) +HTML_DOCS = $(HTML_DOCS-yes) +PDF_DOCS = $(PDF_DOCS-yes) +API_DOCS = $(patsubst %.txt,%.html,$(API_TXT)) + +api-dir: + @test -d api || $(MKINSTALLDIRS) api + +txt: $(addprefix $(srcdir),$(TXT_DOCS)) +html: txt $(HTML_DOCS) +pdf: txt $(PDF_DOCS) +man: txt $(MAN_DOCS) man-update +api: api-dir $(API_DOCS) + +all-docs: man html pdf + +man-update: $(MAN_DOCS) + @test "$(CONFIG_XMLTO)" = yes && \ + sed 's/^\.TH "ELINKS" 1 .*/.TH "ELINKS" 1 "The ELinks text-browser" "$(shell date -I)" "The ELinks text-browser"/' \ + < elinks.1 > $(srcdir)man/man1/elinks.1.in && \ + $(RM) $(MAN_DIR)/man1/elinks.1 + @test "$(CONFIG_XMLTO)" = yes && \ + sed -e 's/\\fI\\fR'\''/\\fI\\'\''\\fR/' < elinkskeys.5 | \ + sed 's/^\.TH "ELINKSKEYS" 5 .*/.TH "ELINKSKEYS" 5 "ELinks keybindings" "$(shell date -I)" "ELinks keybindings"/' \ + > $(srcdir)man/man5/elinkskeys.5 + @$(INSTALL) elinks.conf.5 $(srcdir)man/man5 + +clean-local: + @$(RM) -r api $(GEN_TXT_DOCS) $(MAN_DOCS) $(HTML_DOCS) $(PDF_DOCS) *.tmp + +# Autogenerated files. + +# FIXME: Keep generated .txt files relative to the source directory and files +# they are included in. + +import-features.conf.txt: $(FEATURES) $(IMPORT_FEATURES_CONF) + $(IMPORT_FEATURES_CONF) > $@ + +keymap-defaults.txt keymap-actions.txt: $(MAKE_ELINKSKEYS_MANPAGE) $(KBDBIND) + $(LOCALES) $(srcdir)tools/make-elinkskeys-manpage $(KBDBIND) + +command-options.txt: $(ELINKS) $(HELP2DOC) + $(LOCALES) $(HELP2DOC) --cmdoptions --elinks=$(ELINKS) > $@ + +elinks.conf.5: $(ELINKS) $(HELP2DOC) + $(LOCALES) $(HELP2DOC) --elinksconf --elinks=$(ELINKS) > $@ + +## Default build rules +# + +quiet_cmd_asciidoc = ' [$(LINK_COLOR)ASCIIDOC$(END_COLOR)] $(RELPATH)$@' + cmd_asciidoc = $(ASCIIDOC) -f asciidoc.conf -b $(2) -d $(call doctype,$<) -o $@ $< + + quiet_cmd_xmlto = ' [$(LINK_COLOR)XMLTO$(END_COLOR)] $(RELPATH)$@' + cmd_xmlto = $(XMLTO) $(3) $(2) $< + + quiet_cmd_jw = ' [$(LINK_COLOR)JW$(END_COLOR)] $(RELPATH)$@' + cmd_jw = $(JW) -b $(2) $< + +quiet_cmd_pod2html = ' [$(LINK_COLOR)POD2HTML$(END_COLOR)] $(RELPATH)$@' + cmd_pod2html = $(POD2HTML) --outfile=$@ < $< + +doctype = $(if $(findstring .1.,$(1)),manpage,$(if $(findstring .5.,$(1)),manpage,book)) + +%.html: %.txt asciidoc.conf + $(call cmd,asciidoc,xhtml11) + +%.xml: %.txt asciidoc.conf + $(call cmd,asciidoc,docbook) + +%.1: %.1.xml + $(call cmd,xmlto,man) + +%.5: %.5.xml + $(call cmd,xmlto,man) + +%.html-chunked: %.xml + $(call cmd,xmlto,html,-o $@) + +%.pdf: %.xml + $(call cmd,jw,pdf) + +%.html: %.pod + $(call cmd,pod2html) + +perl-%.html: %.pl + $(call cmd,pod2html) include $(top_srcdir)/Makefile.lib diff --git a/doc/asciidoc.conf b/doc/asciidoc.conf new file mode 100644 index 00000000..3d20da0c --- /dev/null +++ b/doc/asciidoc.conf @@ -0,0 +1,57 @@ +# AsciiDoc configuration file +# Copyright (c) Jonas Fonseca , 2006 + +# The elink macro can have optional {0} value, that is what +# the {0%...} and {0#...} handles. + +############################################################################# +# DocBook + +ifdef::backend-docbook[] +[man-inlinemacro] +{target}({0}) + +## For manpages use less verbose linking +ifdef::doctype-manpage[] +[link-inlinemacro] +{0%<{target}>} +{0#{0} <{target}>} + +[http-inlinemacro] +{0%<http:{target}>} +{0#{0} <http:{target}>} + +[mailto-inlinemacro] +<{target}> + +endif::doctype-manpage[] +endif::backend-docbook[] + +############################################################################# +# XHTML11 + +ifdef::backend-xhtml11[] +[man-inlinemacro] +{target}({0}) + +[id-inlinemacro] +{0} + +[enum-inlinemacro] +enum {target}: {0} + +[func-inlinemacro] +{target}(): {0} + +[struct-inlinemacro] +struct {target}: {0} + +[macro-inlinemacro] +struct {target}: {0} + +[typedef-inlinemacro] +typedef {target}: {0} + +[ref-inlinemacro] +{0} +endif::backend-xhtml11[] diff --git a/doc/code2doc.conf b/doc/code2doc.conf deleted file mode 100644 index 60f1e434..00000000 --- a/doc/code2doc.conf +++ /dev/null @@ -1,55 +0,0 @@ -[specialwords] -emphasizedwords=\bAsciiDoc\b -monospacedwords=\basciidoc\(1\) - -[id-inlinemacro] -{0} - -[enum-inlinemacro] -enum {target}: {0} - -[func-inlinemacro] -{target}(): {0} - -[struct-inlinemacro] -struct {target}: {0} - -[macro-inlinemacro] -struct {target}: {0} - -[typedef-inlinemacro] -typedef {target}: {0} - -[ref-inlinemacro] -{0} - -[replacements] -(^|[^-])--($|[^-])=\1--\2 - -[tags] -ilisttext=| -olisttext=| -vlisttext=| -qlisttext=| -colisttext=| - -[tags] -title1=

|

-title2=

|

-title3=

|

- -[literalparagraph] -
-|
-
- -[listingblock] -

{title}

-
-|
-
- -[noteblock] -

{title}

-| -
diff --git a/doc/elinks.1.txt b/doc/elinks.1.txt new file mode 100644 index 00000000..804e1db0 --- /dev/null +++ b/doc/elinks.1.txt @@ -0,0 +1,157 @@ +elinks(1) +========= + +NAME +---- +elinks - lynx-like alternative character mode WWW browser + +SYNOPSIS +-------- +'elinks' [OPTION]... [URL]... + +DESCRIPTION +----------- + +'ELinks' is a text mode WWW browser, supporting colors, table rendering, +background downloading, menu driven configuration interface, tabbed browsing +and slim code. + +Frames are supported. You can have different file formats associated with +external viewers. `mailto:` and `telnet:` are supported via external clients. + +ELinks can handle both local files and remote URLs. The main supported remote +URL protocols are 'HTTP', 'HTTPS' (with SSL support compiled in) and 'FTP'. +Additional protocol support exists for 'finger', 'Gopher', 'SMB' and +'NNTP'. + +OPTIONS +------- + +Most options can be set in the user interface or config file, so usually you +do not need to care about them. Note that this list is by no means complete +and it is not kept up-to-date. To get complete list of commandline options, +start 'ELinks' with parameter `--help`. + +include::command-options.txt[] + +ENVIRONMENT VARIABLES +--------------------- + +COMSPEC, SHELL:: + + The shell used for File -> OS Shell on DOS/Windows and UNIX, + respectively. + +EDITOR:: + + The program to use for external editor (when editing textareas). + +ELINKS_CONFDIR:: + + The location of the directory containing configuration files. If not + set the default is `~/.elinks/`. + +ELINKS_TWTERM, LINKS_TWTERM:: + + The command to run when selecting File -> New window and if + `TWDISPLAY` is defined (default `twterm -e`) + +ELINKS_XTERM, LINKS_XTERM:: + + The command to run when selecting File -> New window and if `DISPLAY` + is defined (default `xterm -e`) + +FTP_PROXY, HTTP_PROXY, HTTPS_PROXY:: + + The host to proxy the various protocol traffic through. + +NO_PROXY:: + + A comma separated list of URLs which should not be proxied. + +HOME:: + + The path to the users home directory. Used when expanding `~/`. + +WWW_HOME:: + + Homepage location (as in lynx(1)). + +FILES +----- + +@sysconfdir@/elinks.conf:: + Site-wide configuration file. + +~/.elinks/elinks.conf:: + Per-user config file, loaded after site-wide configuration. + +~/.elinks/bookmarks:: + Bookmarks file. + +~/.elinks/cookies:: + Cookies file. + +~/.elinks/formhist:: + Form history file. + +~/.elinks/gotohist:: + GoTo URL dialog history file. + +~/.elinks/globhist:: + History file containing most recently visited URLs. + +~/.elinks/searchhist:: + Search history file. + +~/.elinks/socket:: + Internal 'ELinks' socket for communication between its instances. + +PLATFORMS +--------- + +'ELinks' is known to work on 'Linux', 'FreeBSD', 'OpenBSD', 'Solaris', 'IRIX', +'HPUX', 'Digital Unix', 'AIX', 'OS/2', 'BeOS' and 'RISC OS'. Port for 'Win32' +is in state of beta testing. + +BUGS +---- + +Please report any other bugs you find to the either the ELinks mailing list at +mailto:elinks-users@linuxfromscratch.org[] or if you prefer enter them into +http://bugzilla.elinks.or.cz/[the bug tracking system]. More information about +how to get in contact with developers and getting help can be found on +http://elinks.or.cz/community.html[the community page]. + +LICENSE +------- + +'ELinks' is free software; you can redistribute it and/or modify it under the +terms of http://www.gnu.org/copyleft/gpl.html[the GNU General Public License] +as published by the Free Software Foundation; version 2 of the License. + +AUTHORS +------- + +The 'Links' browser - on which 'ELinks' is based - was written by Mikulas +Patocka mailto:mikulas@artax.karlin.mff.cuni.cz[]. 'ELinks' was written by +Petr Baudis mailto:pasky@ucw.cz[]. See file `AUTHORS` in the source tree for a +list of people contributing to this project. + +The homepage of 'ELinks' can be found at http://elinks.cz/[]. + +This manual page was written by Peter Gervai mailto:grin@tolna.net[], using +excerpts from a (yet?) unknown 'Links' fan for the 'Debian GNU/Linux system' +(but may be used by others). Contributions from Francis A. Holop. Extended, +clarified and made more up-to-date by Petr Baudis mailto:pasky@ucw.cz[]. +Updated by Zas mailto:zas@norz.org[]. The conversion to Asciidoc and trimming +was done by Jonas Fonseca mailto:fonseca@diku.dk[]. + +SEE ALSO +-------- + +man:elinkskeys[5], elinks.conf(5), links(1), lynx(1), w3m(1), wget(1) + +//////////////////////////////////////////////////////////////////////////// +# vim: tabstop=4 shiftwidth=4 textwidth=76 +//////////////////////////////////////////////////////////////////////////// diff --git a/doc/elinkskeys.5.txt b/doc/elinkskeys.5.txt new file mode 100644 index 00000000..47b5ef95 --- /dev/null +++ b/doc/elinkskeys.5.txt @@ -0,0 +1,106 @@ +elinkskeys(5) +============= + +NAME +---- +elinkskeys - keybindings for ELinks + +SYNOPSIS +-------- +Information on how to configure keybinding and overview of the default +keybindings. + +DESCRIPTION +----------- + +Key binding for elinks should be placed in the file `~/.elinks/elinks.conf`. +Note that any information regarding their format/structure may not be +up-to-date. If you will discover that, please feed us with a patch. + +Key binding statements are of the form: + + bind = + +where: + +:: + + is 'main', 'edit', or 'menu'. The main keymap is used for general + browsing. The edit keymap is used for editing text fields. The menu + keymap is used for navigating menus. + +:: + + is a case sensitive key, which you can prefix with 'Ctrl-' or 'Alt-'. + 'Ctrl-' must be followed by an uppercase key. See below for a list of + valid keys. + +:: + + is what the key should do. The actions available are dependent on the + keymap, and are listed separately below. + +All words/strings may all be quoted "like so". Backslashes are escape +characters, even if not between quotes. Lines beginning with a hash character +(`#`) are comments. + +Keys can be unbound just by binding them to the special 'none' action. It may +be of use if you accidentally type a key often. + +EXAMPLE BINDINGS +---------------- + +Some sample keybindings: + + bind "main" "v" = "view-image" + bind "main" "l" = "jump-to-link" + bind "main" "L" = "link-menu" + bind "main" "F10" = "file-menu" + bind "main" "F9" = "menu" + bind "main" "Escape" = "menu" + bind "edit" "Ctrl-R" = "auto-complete-unambiguous" + bind "edit" "Ctrl-W" = "auto-complete" + bind "edit" "Ctrl-K" = "kill-to-eol" + bind "menu" "Ctrl-B" = "page-up" + bind "menu" "PageUp" = "page-up" + bind "menu" "Ctrl-F" = "page-down" + bind "menu" "PageDown" = "page-down" + # ELinks with Lua support + bind "main" "," = "lua-console" + +KEYS +---- + +Valid keys are: alphanumeric characters, punctuation, 'Enter', 'Backspace', +'Tab', 'Escape', 'Left', 'Right', 'Up', 'Down', 'Insert', 'Delete', 'Home', +'End', 'PageUp', 'PageDown', 'F1' to 'F12'. + +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). + +KEYMAP ACTIONS +-------------- + +include::keymap-actions.txt[] + +DEFAULT BINDINGS +---------------- + +The default bindings are shown below. Any bindings in `~/.elinks/elinks.conf` +will override these. + +include::keymap-defaults.txt[] + +AUTHOR +------ + +This manual page was finally written by Peter Wang (one and a half years after +writing the binding code), using excerpts by David Mediavilla. You can thank +Petr Baudis for the subtle requests for documentation. Updated by Zas. Moved +to asciidoc format and cleaned up by Jonas Fonseca. + +SEE ALSO +-------- + +man:elinks[1], elinks.conf(5) diff --git a/doc/installation.txt b/doc/installation.txt index b1082c0c..35043ee7 100644 --- a/doc/installation.txt +++ b/doc/installation.txt @@ -71,6 +71,6 @@ include::small.txt[] include::ecmascript.txt[] -include::txt/import-features.conf.txt[] +include::import-features.conf.txt[] endif::installation-webpage[] diff --git a/doc/introduction.txt b/doc/introduction.txt index 912104b0..f185c798 100644 --- a/doc/introduction.txt +++ b/doc/introduction.txt @@ -323,7 +323,7 @@ document text search all matches will be high-lighted. To get rid of this high-lighting you have to ``search for the empty string'', that is open a search dialog and just press Enter in the input field. -Previous search words are saved in the search history, so they can easily b +Previous search words are saved in the search history, so they can easily be found and used later. Browsing the history will replace the current entered search terms. diff --git a/doc/man/man1/elinks.1.in b/doc/man/man1/elinks.1.in old mode 100644 new mode 100755 index ab43307d..d4316803 --- a/doc/man/man1/elinks.1.in +++ b/doc/man/man1/elinks.1.in @@ -17,7 +17,7 @@ .el .ne 3 .IP "\\$1" \\$2 .. -.TH "ELINKS" 1 "The ELinks text-browser" "2006-01-10" "The ELinks text-browser" +.TH "ELINKS" 1 "The ELinks text-browser" "2006-01-11" "The ELinks text-browser" .SH NAME elinks \- lynx-like alternative character mode WWW browser .SH "SYNOPSIS" @@ -236,7 +236,7 @@ The path to the users home directory\&. Used when expanding ~/\&. .TP WWW_HOME -Homepage location (as in lynx(1)) +Homepage location (as in lynx(1))\&. .SH "FILES" @@ -297,7 +297,7 @@ Please report any other bugs you find to the either the ELinks mailing list at < The \fILinks\fR browser \- on which \fIELinks\fR is based \- was written by Mikulas Patocka \&. \fIELinks\fR was written by Petr Baudis \&. See file AUTHORS in the source tree for a list of people contributing to this project\&. -The homepage of \fIELinks\fR can be found at \&. +The homepage of \fIELinks\fR can be found at \&. This manual page was written by Peter Gervai , using excerpts from a (yet?) unknown \fILinks\fR fan for the \fIDebian GNU/Linux system\fR (but may be used by others)\&. Contributions from Francis A\&. Holop\&. Extended, clarified and made more up\-to\-date by Petr Baudis \&. Updated by Zas \&. The conversion to Asciidoc and trimming was done by Jonas Fonseca \&. diff --git a/doc/man/man5/elinks.conf.5 b/doc/man/man5/elinks.conf.5 old mode 100644 new mode 100755 index 0aa26bfd..39562526 --- a/doc/man/man5/elinks.conf.5 +++ b/doc/man/man5/elinks.conf.5 @@ -1,6 +1,6 @@ .\" elinks.conf.5 .\" -.\" Generated by help2doc (Revision: 1.19) on 2006-01-10 using output from ELinks version 0.12.GIT. +.\" Generated by help2doc (Revision: 1.19) on 2006-01-11 using output from ELinks version 0.12.GIT. .\" .\" Copyleft (c) 2002-2004 The ELinks project .\" @@ -8,7 +8,7 @@ .\" General Public License. .\" .\" Process this file with groff -man -Tascii elinks.conf.5 -.TH ELINKS.CONF 5 "ELinks configuration file" "2006-01-10" "ELinks configuration file" +.TH ELINKS.CONF 5 "ELinks configuration file" "2006-01-11" "ELinks configuration file" .SH NAME elinks.conf \- ELinks configuration file @@ -2242,9 +2242,8 @@ in an xterm-like terminal. This way the document's title is shown on the window titlebar. .SH "DOCUMENT INFO" .PP -Generated by help2doc (Revision: 1.19) on 2006-01-10 using output from ELinks version 0.12.GIT. +Generated by help2doc (Revision: 1.19) on 2006-01-11 using output from ELinks version 0.12.GIT. help2doc is distributed with ELinks under the terms of the GPL. .SH "SEE ALSO" .BR elinks (1), -.BR elinksmanual (1), .BR elinkskeys (5) diff --git a/doc/man/man5/elinkskeys.5 b/doc/man/man5/elinkskeys.5 old mode 100644 new mode 100755 index cf993318..fc38b7e3 --- a/doc/man/man5/elinkskeys.5 +++ b/doc/man/man5/elinkskeys.5 @@ -17,7 +17,7 @@ .el .ne 3 .IP "\\$1" \\$2 .. -.TH "ELINKSKEYS" 5 "ELinks keybindings" "2006-01-10" "ELinks keybindings" +.TH "ELINKSKEYS" 5 "ELinks keybindings" "2006-01-11" "ELinks keybindings" .SH NAME elinkskeys \- keybindings for ELinks .SH "SYNOPSIS" @@ -28,7 +28,7 @@ Information on how to configure keybinding and overview of the default keybindin .SH "DESCRIPTION" -Key binding for elinks should be placed in a file called ~/\&.elinks/elinks\&.conf\&. Note that any information regarding their format/structure may not be up\-to\-date\&. If you will discover that, please feed us with a patch\&. +Key binding for elinks should be placed in the file ~/\&.elinks/elinks\&.conf\&. Note that any information regarding their format/structure may not be up\-to\-date\&. If you will discover that, please feed us with a patch\&. Key binding statements are of the form: @@ -42,7 +42,7 @@ where: .TP -is \fImain\fR, \fIedit\fR, or \fImenu\fR\&. +is \fImain\fR, \fIedit\fR, or \fImenu\fR\&. The main keymap is used for general browsing\&. The edit keymap is used for editing text fields\&. The menu keymap is used for navigating menus\&. .TP @@ -89,10 +89,9 @@ Valid keys are: alphanumeric characters, punctuation, \fIEnter\fR, \fIBackspace\ 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)\&. -.SS "MAIN KEYMAP ACTIONS" +.SH "KEYMAP ACTIONS" - -The main keymap is used for general browsing\&. +.SS "MAIN ACTIONS" .TP abort\-connection @@ -538,10 +537,7 @@ Toggle wrapping of text\&. view\-image View the current image\&. -.SS "EDIT KEYMAP ACTIONS" - - -The edit keymap is used for editing text fields\&. +.SS "EDIT ACTIONS" .TP auto\-complete @@ -643,10 +639,7 @@ Toggle regex matching (type\-ahead searching)\&. up Move cursor upwards\&. -.SS "MENU KEYMAP ACTIONS" - - -The menu keymap is used for navigating menus\&. +.SS "MENU ACTIONS" .TP cancel diff --git a/doc/tools/make-elinks-manpage b/doc/tools/make-elinks-manpage deleted file mode 100755 index c7406c23..00000000 --- a/doc/tools/make-elinks-manpage +++ /dev/null @@ -1,212 +0,0 @@ -#!/bin/sh -# -# Generate the elinks(1) manpage. -# Copyright (c) Jonas Fonseca , 2005 -# - -DOCTYPE=$(echo "$1" | sed 's/.*elinks.1.//' | sed 's/.txt.*//') -ELINKS=$2 -HELP2DOC=$3 - -GPL="http://www.gnu.org/copyleft/gpl.html" - -link() -{ - target="$1"; shift - - [ "$1" ] && name="$@" - case "$DOCTYPE" in - man) - echo "$name <$target>" - ;; - html) - echo "link:$target[$name]" - ;; - esac -} - -email() -{ - email="$1" - - case "$DOCTYPE" in - man) - echo "<$email>" - ;; - html) - echo "mailto:$email[<$email>]" - ;; - esac -} - -man() -{ - target="$1" - section="$2" - - case "$DOCTYPE" in - man) - echo "\`$target($section)\`" - ;; - html) - echo "link:$target.$section.html[\`$target($section)\`]" - ;; - esac -} - -print_command_options() -{ - $HELP2DOC --cmdoptions --elinks=$ELINKS -} - -cat << __END__ -elinks(1) -========= - -NAME ----- -elinks - lynx-like alternative character mode WWW browser - -SYNOPSIS --------- -'elinks' [OPTION]... [URL]... - -DESCRIPTION ------------ - -'ELinks' is a text mode WWW browser, supporting colors, table rendering, -background downloading, menu driven configuration interface, tabbed browsing -and slim code. - -Frames are supported. You can have different file formats associated with -external viewers. \`mailto:\` and \`telnet:\` are supported via external -clients. - -ELinks can handle both local files and remote URLs. The main supported -remote URL protocols are 'HTTP', 'HTTPS' (with SSL support compiled in) and -'FTP'. Additional protocol support exists for 'finger', 'Gopher', 'SMB' -and 'NNTP'. - -OPTIONS -------- - -Most options can be set in the user interface or config file, so usually you -do not need to care about them. Note that this list is by no means complete -and it is not kept up-to-date. To get complete list of commandline options, -start 'ELinks' with parameter \`--help\`. - -$(print_command_options) - -ENVIRONMENT VARIABLES ---------------------- - -COMSPEC, SHELL:: - The shell used for File -> OS Shell on DOS/Windows and UNIX, - respectively. - -EDITOR:: - The program to use for external editor (when editing textareas). - -ELINKS_CONFDIR:: - The location of the directory containing configuration files. - If not set the default is \`~/.elinks/\`. - -ELINKS_TWTERM, LINKS_TWTERM:: - The command to run when selecting File -> New window and if - \`TWDISPLAY\` is defined (default \`twterm -e\`) - -ELINKS_XTERM, LINKS_XTERM:: - The command to run when selecting File -> New window and if - \`DISPLAY\` is defined (default \`xterm -e\`) - -FTP_PROXY, HTTP_PROXY, HTTPS_PROXY:: - The host to proxy the various protocol traffic through. - -NO_PROXY:: - A comma separated list of URLs which should not be proxied. - -HOME:: - The path to the users home directory. Used when expanding \`~/\`. - -WWW_HOME:: - Homepage location (as in \`lynx(1)\`) - -FILES ------ - -@sysconfdir@/elinks.conf:: - Site-wide configuration file. - -~/.elinks/elinks.conf:: - Per-user config file, loaded after site-wide configuration. - -~/.elinks/bookmarks:: - Bookmarks file. - -~/.elinks/cookies:: - Cookies file. - -~/.elinks/formhist:: - Form history file. - -~/.elinks/gotohist:: - GoTo URL dialog history file. - -~/.elinks/globhist:: - History file containing most recently visited URLs. - -~/.elinks/searchhist:: - Search history file. - -~/.elinks/socket:: - Internal 'ELinks' socket for communication between its instances. - -PLATFORMS ---------- - -'ELinks' is known to work on 'Linux', 'FreeBSD', 'OpenBSD', 'Solaris', -'IRIX', 'HPUX', 'Digital Unix', 'AIX', 'OS/2', 'BeOS' and 'RISC OS'. Port -for 'Win32' is in state of beta testing. - -BUGS ----- - -Please report any other bugs you find to the either the ELinks mailing list -at $(email elinks-users@linuxfromscratch.org) or if you prefer enter them -into $(link http://bugzilla.elinks.or.cz/ the bug tracking system). More -information about how to get in contact with developers and getting help can -be found on $(link http://elinks.or.cz/community.html the community page). - -LICENSE -------- - -'ELinks' is free software; you can redistribute it and/or modify it under -the terms of $(link $GPL the GNU General Public License) as published by the -Free Software Foundation; version 2 of the License. - -AUTHORS -------- - -The 'Links' browser - on which 'ELinks' is based - was written by Mikulas -Patocka $(email mikulas@artax.karlin.mff.cuni.cz). 'ELinks' was written by -Petr Baudis $(email pasky@ucw.cz). See file \`AUTHORS\` in the source tree -for a list of people contributing to this project. - -The homepage of 'ELinks' can be found at $(link http://elinks.or.cz/). - -This manual page was written by Peter Gervai $(email grin@tolna.net), using -excerpts from a (yet?) unknown 'Links' fan for the 'Debian GNU/Linux system' -(but may be used by others). Contributions from Francis A. Holop. Extended, -clarified and made more up-to-date by Petr Baudis $(email pasky@ucw.cz). -Updated by Zas $(email zas@norz.org). The conversion to Asciidoc and -trimming was done by Jonas Fonseca $(email fonseca@diku.dk). - -SEE ALSO --------- - -$(man elinkskeys 5), \`elinks.conf(5)\`, \`links(1)\`, \`lynx(1)\`, -\`w3m(1)\`, \`wget(1)\` - -__END__ - -# vim: tabstop=4 shiftwidth=4 textwidth=76 diff --git a/doc/tools/make-elinkskeys-manpage b/doc/tools/make-elinkskeys-manpage index 6d535a3b..ee9e04ae 100755 --- a/doc/tools/make-elinkskeys-manpage +++ b/doc/tools/make-elinkskeys-manpage @@ -1,64 +1,34 @@ #!/bin/sh # -# Generate the elinkskeys(5) manpage. -# Copyright (c) Jonas Fonseca , 2005 +# Generate the keymap-actions.txt and keymap-defaults.txt for elinkskeys(5) +# manpage. +# +# Copyright (c) Jonas Fonseca , 2005-2006 # # FIXME: # -# - You may prefix each of these keys with a number, telling its repeat -# count (how many times to do it). You can also re-bind keys, see -# elinkskeys(5) for documentation and a more complete list of keys bound by -# default. +# - You may prefix each of these keys with a number, telling its repeat count +# (how many times to do it). You can also re-bind keys, see elinkskeys(5) for +# documentation and a more complete list of keys bound by default. # # - The following keys can be used while editing a line/jumping to a URL -DOCTYPE=$(echo "$1" | sed 's/.*elinkskeys.5.//' | sed 's/.txt.*//') -KBDBIND=$2 -CONFIGDIR=$(dirname "$2") +KBDBIND=$1 +CONFIGDIR=$(dirname "$KBDBIND") -link() -{ - target="$1"; shift - - [ "$1" ] && name="$@" - case "$DOCTYPE" in - man) - echo "$name <$target>" - ;; - html) - echo "link:$target[$name]" - ;; - esac -} - -man() -{ - target="$1" - section="$2" - - case "$DOCTYPE" in - man) - echo "\`$target($section)\`" - ;; - html) - echo "link:$target.$section.html[\`$target($section)\`]" - ;; - esac -} +test -d "$CONFIGDIR" || exit print_keymap_actions() { keymap=$1 - case "$DOCTYPE" in - html) - # open-link-in-new-tab-in-background - echo '`----------------------------------`----------------------------------------------------------------------------' - echo 'Action Description' - echo '----------------------------------------------------------------------------------------------------------------' - ;; - esac + echo 'ifdef::backend-xhtml11[]' + echo '`----------------------------------`----------------------------------------------------------------------------' + echo 'Action Description' + echo '----------------------------------------------------------------------------------------------------------------' + # open-link-in-new-tab-in-background + echo 'endif::backend-xhtml11[]' grep ACTION_ "$CONFIGDIR/actions-$keymap.inc" \ | while read entry; @@ -69,23 +39,17 @@ print_keymap_actions() [ "$action" = "none" ] && continue [ "$action" = " *scripting-function*" ] && continue - case "$DOCTYPE" in - man) - echo - echo "$action::" - echo " $caption." - ;; - html) - printf "%-34s %s\n" "$action" "$caption" - ;; - esac + echo 'ifdef::backend-docbook[]' + echo "$action:: $caption." + echo 'endif::backend-docbook[]' + echo 'ifdef::backend-xhtml11[]' + printf "%-34s %s\n" "$action" "$caption" + echo 'endif::backend-xhtml11[]' done - case "$DOCTYPE" in - html) - echo '---------------------------------------------------------------------------------------------------------------' - ;; - esac + echo 'ifdef::backend-xhtml11[]' + echo '---------------------------------------------------------------------------------------------------------------' + echo 'endif::backend-xhtml11[]' } print_keymap_defaults() @@ -93,14 +57,12 @@ print_keymap_defaults() keymap="$1" KEYMAP=$(echo $1 | tr '[a-z]' '[A-Z]') - case "$DOCTYPE" in - html) - # Ctrl-Insert - echo '`-----------`-------------------------------------------------------------------------------' - echo 'Key Description (Action)' - echo '--------------------------------------------------------------------------------------------' - ;; - esac + echo 'ifdef::backend-xhtml11[]' + echo '`-----------`-------------------------------------------------------------------------------' + echo 'Key Description (Action)' + echo '--------------------------------------------------------------------------------------------' + # Ctrl-Insert + echo 'endif::backend-xhtml11[]' grep ACT_$KEYMAP $KBDBIND | grep '^[[:space:]]{' | grep -v '{ "' \ | while read entry @@ -143,121 +105,40 @@ print_keymap_defaults() printf "%-11s %s\n" "$modifier$key" "$action" ;; esac + + echo 'ifdef::backend-docbook[]' + echo "'$modifier$key':: $action" + echo 'endif::backend-docbook[]' + echo 'ifdef::backend-xhtml11[]' + printf "%-11s %s\n" "$modifier$key" "$action" + echo 'endif::backend-xhtml11[]' done - case "$DOCTYPE" in - html) - echo '--------------------------------------------------------------------------------------------' - ;; - esac + echo 'ifdef::backend-xhtml11[]' + + echo '--------------------------------------------------------------------------------------------' + echo 'endif::backend-xhtml11[]' + } -cat << __END__ -elinkskeys(5) -============= - -NAME ----- -elinkskeys - keybindings for ELinks - -SYNOPSIS --------- -Information on how to configure keybinding and overview of the default -keybindings. - -DESCRIPTION ------------ - -Key binding for elinks should be placed in a file called -~/.elinks/elinks.conf. Note that any information regarding their -format/structure may not be up-to-date. If you will discover that, please -feed us with a patch. - -Key binding statements are of the form: - - bind = - -where: - -:: - is 'main', 'edit', or 'menu'. - -:: - is a case sensitive key, which you can prefix with 'Ctrl-' or 'Alt-'. - 'Ctrl-' must be followed by an uppercase key. See below for a list of - valid keys. - -:: - - is what the key should do. The actions available are dependent on the - keymap, and are listed separately below. - -All words/strings may all be quoted "like so". Backslashes are escape -characters, even if not between quotes. Lines beginning with a hash -character (\`#\`) are comments. - -Keys can be unbound just by binding them to the special 'none' action. It -may be of use if you accidentally type a key often. - -EXAMPLE BINDINGS ----------------- - -Some sample keybindings: - - bind "main" "v" = "view-image" - bind "main" "l" = "jump-to-link" - bind "main" "L" = "link-menu" - bind "main" "F10" = "file-menu" - bind "main" "F9" = "menu" - bind "main" "Escape" = "menu" - bind "edit" "Ctrl-R" = "auto-complete-unambiguous" - bind "edit" "Ctrl-W" = "auto-complete" - bind "edit" "Ctrl-K" = "kill-to-eol" - bind "menu" "Ctrl-B" = "page-up" - bind "menu" "PageUp" = "page-up" - bind "menu" "Ctrl-F" = "page-down" - bind "menu" "PageDown" = "page-down" - # ELinks with Lua support - bind "main" "," = "lua-console" - -KEYS ----- - -Valid keys are: alphanumeric characters, punctuation, 'Enter', 'Backspace', -'Tab', 'Escape', 'Left', 'Right', 'Up', 'Down', 'Insert', 'Delete', 'Home', -'End', 'PageUp', 'PageDown', 'F1' to 'F12'. - -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). - -MAIN KEYMAP ACTIONS -~~~~~~~~~~~~~~~~~~~ - -The main keymap is used for general browsing. +cat > keymap-actions.txt << __END__ +MAIN ACTIONS +~~~~~~~~~~~~ $(print_keymap_actions main) -EDIT KEYMAP ACTIONS -~~~~~~~~~~~~~~~~~~~ - -The edit keymap is used for editing text fields. +EDIT ACTIONS +~~~~~~~~~~~~ $(print_keymap_actions edit) -MENU KEYMAP ACTIONS -~~~~~~~~~~~~~~~~~~~ - -The menu keymap is used for navigating menus. +MENU ACTIONS +~~~~~~~~~~~~ $(print_keymap_actions menu) +__END__ -DEFAULT BINDINGS ----------------- - -The default bindings are shown below. Any bindings in -\`~/.elinks/elinks.conf\` will override these. - +cat > keymap-defaults.txt << __END__ MAIN KEYS ~~~~~~~~~ @@ -272,18 +153,4 @@ MENU KEYS ~~~~~~~~~ $(print_keymap_defaults menu) - -AUTHOR ------- - -This manual page was finally written by Peter Wang (one and a half years -after writing the binding code), using excerpts by David Mediavilla. You can -thank Petr Baudis for the subtle requests for documentation. Updated by Zas. -Moved to asciidoc format and cleaned up by Jonas Fonseca. - -SEE ALSO --------- - -$(man elinks 1), \`elinks.conf(5)\` - __END__ diff --git a/src/dom/scanner.h b/src/dom/scanner.h index 88e03dc0..54c3096d 100644 --- a/src/dom/scanner.h +++ b/src/dom/scanner.h @@ -4,6 +4,8 @@ #include "dom/string.h" #include "util/error.h" +/* API Doc :: dom-scanner */ + /* Define if you want a talking scanner */ /* #define DEBUG_DOM_SCANNER */ diff --git a/src/dom/sgml/parser.h b/src/dom/sgml/parser.h index b98f92dd..97be5ae1 100644 --- a/src/dom/sgml/parser.h +++ b/src/dom/sgml/parser.h @@ -11,6 +11,8 @@ struct sgml_parser; struct string; struct uri; +/* API Doc :: dom-sgml-parser */ + /** SGML parser type * * There are two kinds of parser types: One that optimises one-time access to diff --git a/src/dom/stack.h b/src/dom/stack.h index 7458797e..0d3f6e51 100644 --- a/src/dom/stack.h +++ b/src/dom/stack.h @@ -7,6 +7,8 @@ struct dom_stack; +/* API Doc :: dom-stack */ + /** DOM stack callback * * Used by contexts, for 'hooking' into the node traversing. */