mirror of
https://github.com/rkd77/elinks.git
synced 2024-12-04 14:46:47 -05:00
Redo the whole doc/ build thing
You can now use: make {all-docs,pdf,html,man,api,update-man} instead of: make {all-docs,pdf-docs,html-docs,man-docs} Away is building into separate dirs. This makes make able to actually get dependencies right, since there are now a collection of 'common' build rules, some of which have even been moved to use the cmd infrastructure. To update the man pages there is a new update-man rule. It builds the manual pages and copies them to their proper place under man/ while doing the final preformatting. As good thing is that the (two) man pages are moved to .txt files and include the generated content. The API building thing is also refined. It builds into api/ and builds it's list of files dynamically by searching throught the .h files in the src/ directory. Documented header files must contain a comment like this: /* API Doc :: <api-name> */ where <api-name> is the name used for the file under api/, for example dom-scanner.
This commit is contained in:
parent
fe7c2391d6
commit
ba6221c6f6
15
doc/.gitignore
vendored
15
doc/.gitignore
vendored
@ -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
|
||||
|
274
doc/Makefile
274
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 mcmd,asciidoc,xhtml11)
|
||||
|
||||
%.xml: %.txt asciidoc.conf
|
||||
$(call mcmd,asciidoc,docbook)
|
||||
|
||||
%.1: %.1.xml
|
||||
$(call mcmd,xmlto,man)
|
||||
|
||||
%.5: %.5.xml
|
||||
$(call mcmd,xmlto,man)
|
||||
|
||||
%.html-chunked: %.xml
|
||||
$(call mcmd,xmlto,html,-o $@)
|
||||
|
||||
%.pdf: %.xml
|
||||
$(call mcmd,jw,pdf)
|
||||
|
||||
%.html: %.pod
|
||||
$(call mcmd,pod2html)
|
||||
|
||||
perl-%.html: %.pl
|
||||
$(call mcmd,pod2html)
|
||||
|
||||
include $(top_srcdir)/Makefile.lib
|
||||
|
57
doc/asciidoc.conf
Normal file
57
doc/asciidoc.conf
Normal file
@ -0,0 +1,57 @@
|
||||
# AsciiDoc configuration file
|
||||
# Copyright (c) Jonas Fonseca <fonseca@diku.dk>, 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]
|
||||
<a href="{target}.{0}.html">{target}({0})</a>
|
||||
|
||||
[id-inlinemacro]
|
||||
<a id="{0}" href="#{0}">{0}</a>
|
||||
|
||||
[enum-inlinemacro]
|
||||
<a id="{target}">enum {target}: {0}</a>
|
||||
|
||||
[func-inlinemacro]
|
||||
<a id="{target}">{target}(): {0}</a>
|
||||
|
||||
[struct-inlinemacro]
|
||||
<a id="{target}">struct {target}: {0}</a>
|
||||
|
||||
[macro-inlinemacro]
|
||||
<a id="{target}">struct {target}: {0}</a>
|
||||
|
||||
[typedef-inlinemacro]
|
||||
<a id="{target}">typedef {target}: {0}</a>
|
||||
|
||||
[ref-inlinemacro]
|
||||
<a href="{target}#{0}">{0}</a>
|
||||
endif::backend-xhtml11[]
|
@ -1,55 +0,0 @@
|
||||
[specialwords]
|
||||
emphasizedwords=\bAsciiDoc\b
|
||||
monospacedwords=\basciidoc\(1\)
|
||||
|
||||
[id-inlinemacro]
|
||||
<a id="{0}" href="#{0}">{0}</a>
|
||||
|
||||
[enum-inlinemacro]
|
||||
<a id="{target}">enum {target}: {0}</a>
|
||||
|
||||
[func-inlinemacro]
|
||||
<a id="{target}">{target}(): {0}</a>
|
||||
|
||||
[struct-inlinemacro]
|
||||
<a id="{target}">struct {target}: {0}</a>
|
||||
|
||||
[macro-inlinemacro]
|
||||
<a id="{target}">struct {target}: {0}</a>
|
||||
|
||||
[typedef-inlinemacro]
|
||||
<a id="{target}">typedef {target}: {0}</a>
|
||||
|
||||
[ref-inlinemacro]
|
||||
<a href="{target}#{0}">{0}</a>
|
||||
|
||||
[replacements]
|
||||
(^|[^-])--($|[^-])=\1--\2
|
||||
|
||||
[tags]
|
||||
ilisttext=|
|
||||
olisttext=|
|
||||
vlisttext=|
|
||||
qlisttext=|
|
||||
colisttext=|
|
||||
|
||||
[tags]
|
||||
title1=<h1>|</h1>
|
||||
title2=<h2>|</h2>
|
||||
title3=<h3>|</h3>
|
||||
|
||||
[literalparagraph]
|
||||
<table border="1" class="code"><tr><td><pre>
|
||||
|
|
||||
</pre></td></tr></table>
|
||||
|
||||
[listingblock]
|
||||
<p><b>{title}</b></p>
|
||||
<table border="1" class="code"><tr><td><pre>
|
||||
|
|
||||
</pre></td></tr></table>
|
||||
|
||||
[noteblock]
|
||||
<div><p><b>{title}</b></p>
|
||||
|
|
||||
</div>
|
157
doc/elinks.1.txt
Normal file
157
doc/elinks.1.txt
Normal file
@ -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
|
||||
////////////////////////////////////////////////////////////////////////////
|
106
doc/elinkskeys.5.txt
Normal file
106
doc/elinkskeys.5.txt
Normal file
@ -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 <keymap> <keystroke> = <action>
|
||||
|
||||
where:
|
||||
|
||||
<keymap>::
|
||||
|
||||
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.
|
||||
|
||||
<keystroke>::
|
||||
|
||||
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.
|
||||
|
||||
<action>::
|
||||
|
||||
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)
|
@ -71,6 +71,6 @@ include::small.txt[]
|
||||
|
||||
include::ecmascript.txt[]
|
||||
|
||||
include::txt/import-features.conf.txt[]
|
||||
include::import-features.conf.txt[]
|
||||
|
||||
endif::installation-webpage[]
|
||||
|
6
doc/man/man1/elinks.1.in
Normal file → Executable file
6
doc/man/man1/elinks.1.in
Normal file → Executable file
@ -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 <mikulas@artax\&.karlin\&.mff\&.cuni\&.cz>\&. \fIELinks\fR was written by Petr Baudis <pasky@ucw\&.cz>\&. 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 <http://elinks\&.or\&.cz/>\&.
|
||||
The homepage of \fIELinks\fR can be found at <http://elinks\&.cz/>\&.
|
||||
|
||||
|
||||
This manual page was written by Peter Gervai <grin@tolna\&.net>, 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 <pasky@ucw\&.cz>\&. Updated by Zas <zas@norz\&.org>\&. The conversion to Asciidoc and trimming was done by Jonas Fonseca <fonseca@diku\&.dk>\&.
|
||||
|
7
doc/man/man5/elinks.conf.5
Normal file → Executable file
7
doc/man/man5/elinks.conf.5
Normal file → Executable file
@ -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. <www.gnu.org/licenses/gpl.html>
|
||||
.\"
|
||||
.\" 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)
|
||||
|
21
doc/man/man5/elinkskeys.5
Normal file → Executable file
21
doc/man/man5/elinkskeys.5
Normal file → Executable file
@ -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
|
||||
<keymap>
|
||||
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
|
||||
<keystroke>
|
||||
@ -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
|
||||
|
@ -1,212 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Generate the elinks(1) manpage.
|
||||
# Copyright (c) Jonas Fonseca <fonseca@diku.dk>, 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
|
@ -1,64 +1,34 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Generate the elinkskeys(5) manpage.
|
||||
# Copyright (c) Jonas Fonseca <fonseca@diku.dk>, 2005
|
||||
# Generate the keymap-actions.txt and keymap-defaults.txt for elinkskeys(5)
|
||||
# manpage.
|
||||
#
|
||||
# Copyright (c) Jonas Fonseca <fonseca@diku.dk>, 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 <keymap> <keystroke> = <action>
|
||||
|
||||
where:
|
||||
|
||||
<keymap>::
|
||||
is 'main', 'edit', or 'menu'.
|
||||
|
||||
<keystroke>::
|
||||
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.
|
||||
|
||||
<action>::
|
||||
|
||||
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__
|
||||
|
Loading…
Reference in New Issue
Block a user