mirror of
https://github.com/rkd77/elinks.git
synced 2024-12-04 14:46:47 -05:00
commit
89fe822f70
43
configure.in
43
configure.in
@ -532,7 +532,6 @@ if test "$enable_see" = "yes"; then
|
||||
EL_CONFIG(CONFIG_SEE, [SEE])
|
||||
AC_SUBST(SEE_CFLAGS)
|
||||
AC_SUBST(CONFIG_SEE)
|
||||
disable_spidermonkey=yes
|
||||
else
|
||||
if test -n "$withval" && test "x$withval" != xno; then
|
||||
AC_MSG_ERROR([SEE not found])
|
||||
@ -597,9 +596,31 @@ else
|
||||
AC_SUBST(SPIDERMONKEY_CFLAGS)
|
||||
fi
|
||||
|
||||
AC_SUBST(CONFIG_SPIDERMONKEY)
|
||||
if test "$CONFIG_SEE" != yes; then
|
||||
EL_CONFIG(CONFIG_ECMASCRIPT_SMJS, [SpiderMonkey document scripting])
|
||||
fi
|
||||
|
||||
EL_CONFIG_DEPENDS(CONFIG_ECMASCRIPT, [CONFIG_SEE CONFIG_SPIDERMONKEY], [ECMAScript (JavaScript)])
|
||||
AC_SUBST(CONFIG_SPIDERMONKEY)
|
||||
AC_SUBST(CONFIG_ECMASCRIPT_SMJS)
|
||||
|
||||
EL_CONFIG_DEPENDS(CONFIG_ECMASCRIPT, [CONFIG_SEE CONFIG_ECMASCRIPT_SMJS], [ECMAScript (JavaScript)])
|
||||
|
||||
|
||||
dnl ===================================================================
|
||||
dnl Optional Spidermonkey-based ECMAScript browser scripting
|
||||
dnl ===================================================================
|
||||
|
||||
AC_ARG_ENABLE(sm-scripting,
|
||||
[ --disable-sm-scripting ECMAScript browser scripting (requires Spidermonkey)],
|
||||
[if test "$enableval" != no; then enableval="yes"; fi
|
||||
CONFIG_SM_SCRIPTING="$enableval";])
|
||||
|
||||
if test "x$CONFIG_SPIDERMONKEY" = xyes &&
|
||||
test "x$CONFIG_SM_SCRIPTING" = xyes; then
|
||||
EL_CONFIG(CONFIG_SM_SCRIPTING, [SpiderMonkey])
|
||||
else
|
||||
CONFIG_SM_SCRIPTING=no
|
||||
fi
|
||||
|
||||
|
||||
dnl ===================================================================
|
||||
@ -830,22 +851,6 @@ dnl ===================================================================
|
||||
|
||||
EL_CONFIG_RUBY
|
||||
|
||||
dnl ===================================================================
|
||||
dnl Optional Spidermonkey-based ECMAScript browser scripting
|
||||
dnl ===================================================================
|
||||
|
||||
AC_ARG_ENABLE(sm-scripting,
|
||||
[ --disable-sm-scripting ECMAScript browser scripting (requires Spidermonkey)],
|
||||
[if test "$enableval" != no; then enableval="yes"; fi
|
||||
CONFIG_SM_SCRIPTING="$enableval";])
|
||||
|
||||
if test "x$CONFIG_SPIDERMONKEY" = xyes &&
|
||||
test "x$CONFIG_SM_SCRIPTING" = xyes; then
|
||||
EL_CONFIG(CONFIG_SM_SCRIPTING, [SpiderMonkey])
|
||||
else
|
||||
CONFIG_SM_SCRIPTING=no
|
||||
fi
|
||||
|
||||
dnl ===================================================================
|
||||
dnl Setup global scripting
|
||||
dnl ===================================================================
|
||||
|
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 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
|
||||
|
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)
|
@ -618,6 +618,22 @@ typedef int (some_func_T)(void *);
|
||||
typedef long long our_long_T;
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Please use mode_t and S_I???? macros instead of numeric modes
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.Use:
|
||||
-------------------------------------------------------------------------------
|
||||
mode_t mode = S_IRWXU | S_IRGRP | S_IROTH;
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
.Instead of:
|
||||
-------------------------------------------------------------------------------
|
||||
int mode = 0744;
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Note that S_IREAD, S_IWRITE and S_IEXEC are obsolete, you should use S_IRUSR,
|
||||
S_IWUSR, S_IXUSR instead.
|
||||
|
||||
|
||||
Patches
|
||||
~~~~~~~
|
||||
|
@ -71,6 +71,6 @@ include::small.txt[]
|
||||
|
||||
include::ecmascript.txt[]
|
||||
|
||||
include::txt/import-features.conf.txt[]
|
||||
include::import-features.conf.txt[]
|
||||
|
||||
endif::installation-webpage[]
|
||||
|
@ -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.
|
||||
|
||||
|
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__
|
||||
|
134
po/fr.po
134
po/fr.po
@ -6,8 +6,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ELinks 0.12.GIT\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2006-01-03 13:41+0100\n"
|
||||
"PO-Revision-Date: 2006-01-01 13:42+0100\n"
|
||||
"POT-Creation-Date: 2006-01-10 23:00+0100\n"
|
||||
"PO-Revision-Date: 2006-01-10 23:01+0100\n"
|
||||
"Last-Translator: Laurent Monin <zas@norz.org>\n"
|
||||
"Language-Team: French <zas@norz.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@ -15,21 +15,21 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n>1;\n"
|
||||
|
||||
#: src/bfu/hierbox.c:329
|
||||
#: src/bfu/hierbox.c:338
|
||||
msgid "Close"
|
||||
msgstr "Fermer"
|
||||
|
||||
#. | MSGBOX_SCROLLABLE
|
||||
#: src/bfu/hierbox.c:425 src/bfu/hierbox.c:434 src/dialogs/document.c:43
|
||||
#: src/bfu/hierbox.c:434 src/bfu/hierbox.c:443 src/dialogs/document.c:43
|
||||
#: src/dialogs/document.c:240
|
||||
msgid "Info"
|
||||
msgstr "Info"
|
||||
|
||||
#: src/bfu/hierbox.c:426
|
||||
#: src/bfu/hierbox.c:435
|
||||
msgid "Press space to expand this folder."
|
||||
msgstr "Pressez espace pour déployer le dossier."
|
||||
|
||||
#: src/bfu/hierbox.c:437 src/bfu/inpfield.c:254 src/bfu/msgbox.c:172
|
||||
#: src/bfu/hierbox.c:446 src/bfu/inpfield.c:254 src/bfu/msgbox.c:172
|
||||
#: src/bfu/msgbox.c:189 src/config/dialogs.c:57 src/config/dialogs.c:391
|
||||
#: src/cookies/dialogs.c:354 src/dialogs/edit.c:97 src/dialogs/info.c:133
|
||||
#: src/dialogs/options.c:210 src/dialogs/options.c:290 src/mime/dialogs.c:129
|
||||
@ -40,57 +40,57 @@ msgid "~OK"
|
||||
msgstr "~OK"
|
||||
|
||||
#. cant_delete_item
|
||||
#: src/bfu/hierbox.c:548
|
||||
#: src/bfu/hierbox.c:557
|
||||
#, c-format
|
||||
msgid "Sorry, but the item \"%s\" cannot be deleted."
|
||||
msgstr "Désolé, mais l'item \"%s\" ne peut être supprimé."
|
||||
|
||||
#. cant_delete_used_item
|
||||
#: src/bfu/hierbox.c:551
|
||||
#: src/bfu/hierbox.c:560
|
||||
#, c-format
|
||||
msgid "Sorry, but the item \"%s\" is being used by something else."
|
||||
msgstr "Désolé, mais l'item \"%s\" est actuellement utilisé ailleurs."
|
||||
|
||||
#. cant_delete_folder
|
||||
#: src/bfu/hierbox.c:554 src/bookmarks/dialogs.c:119
|
||||
#: src/bfu/hierbox.c:563 src/bookmarks/dialogs.c:119
|
||||
#, c-format
|
||||
msgid "Sorry, but the folder \"%s\" cannot be deleted."
|
||||
msgstr "Désolé, mais le dossier \"%s\" ne peut être supprimé."
|
||||
|
||||
#. cant_delete_used_folder
|
||||
#: src/bfu/hierbox.c:557 src/bookmarks/dialogs.c:121
|
||||
#: src/bfu/hierbox.c:566 src/bookmarks/dialogs.c:121
|
||||
#, c-format
|
||||
msgid "Sorry, but the folder \"%s\" is being used by something else."
|
||||
msgstr "Désolé, mais le dossier \"%s\" est actuellement utilisé ailleurs."
|
||||
|
||||
#. delete_marked_items_title
|
||||
#: src/bfu/hierbox.c:560
|
||||
#: src/bfu/hierbox.c:569
|
||||
msgid "Delete marked items"
|
||||
msgstr "Supprimer les items marqués"
|
||||
|
||||
#. delete_marked_items
|
||||
#: src/bfu/hierbox.c:563
|
||||
#: src/bfu/hierbox.c:572
|
||||
msgid "Delete marked items?"
|
||||
msgstr "Supprimer les items marqués ?"
|
||||
|
||||
#. delete_folder_title
|
||||
#: src/bfu/hierbox.c:566 src/bookmarks/dialogs.c:127
|
||||
#: src/bfu/hierbox.c:575 src/bookmarks/dialogs.c:127
|
||||
msgid "Delete folder"
|
||||
msgstr "Supprimer un dossier"
|
||||
|
||||
#. delete_folder
|
||||
#: src/bfu/hierbox.c:569
|
||||
#: src/bfu/hierbox.c:578
|
||||
#, c-format
|
||||
msgid "Delete the folder \"%s\" and its content?"
|
||||
msgstr "Supprimer le dossier \"%s\" et son contenu ?"
|
||||
|
||||
#. delete_item_title
|
||||
#: src/bfu/hierbox.c:572
|
||||
#: src/bfu/hierbox.c:581
|
||||
msgid "Delete item"
|
||||
msgstr "Supprimer un item"
|
||||
|
||||
#. delete_item
|
||||
#: src/bfu/hierbox.c:575
|
||||
#: src/bfu/hierbox.c:584
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Delete \"%s\"?\n"
|
||||
@ -102,45 +102,45 @@ msgstr ""
|
||||
"%s"
|
||||
|
||||
#. clear_all_items_title
|
||||
#: src/bfu/hierbox.c:578
|
||||
#: src/bfu/hierbox.c:587
|
||||
msgid "Clear all items"
|
||||
msgstr "Effacer tous les items"
|
||||
|
||||
#. clear_all_items
|
||||
#: src/bfu/hierbox.c:581
|
||||
#: src/bfu/hierbox.c:590
|
||||
msgid "Do you really want to remove all items?"
|
||||
msgstr "Êtes-vous sûr de vouloir effacer tous les items ?"
|
||||
|
||||
#: src/bfu/hierbox.c:638
|
||||
#: src/bfu/hierbox.c:647
|
||||
msgid "Delete error"
|
||||
msgstr "Erreur de suppression"
|
||||
|
||||
#: src/bfu/hierbox.c:741 src/bfu/hierbox.c:770 src/bfu/hierbox.c:783
|
||||
#: src/bfu/hierbox.c:848 src/config/dialogs.c:832 src/dialogs/menu.c:126
|
||||
#: src/bfu/hierbox.c:750 src/bfu/hierbox.c:779 src/bfu/hierbox.c:792
|
||||
#: src/bfu/hierbox.c:857 src/config/dialogs.c:832 src/dialogs/menu.c:126
|
||||
#: src/formhist/formhist.c:418 src/mime/dialogs.c:69 src/session/task.c:272
|
||||
#: src/terminal/tab.c:191 src/terminal/tab.c:227
|
||||
msgid "~Yes"
|
||||
msgstr "~Oui"
|
||||
|
||||
#: src/bfu/hierbox.c:742 src/bfu/hierbox.c:771 src/bfu/hierbox.c:784
|
||||
#: src/bfu/hierbox.c:849 src/config/dialogs.c:833 src/dialogs/menu.c:127
|
||||
#: src/bfu/hierbox.c:751 src/bfu/hierbox.c:780 src/bfu/hierbox.c:793
|
||||
#: src/bfu/hierbox.c:858 src/config/dialogs.c:833 src/dialogs/menu.c:127
|
||||
#: src/formhist/formhist.c:419 src/mime/dialogs.c:70 src/session/task.c:273
|
||||
#: src/terminal/tab.c:192 src/terminal/tab.c:228
|
||||
msgid "~No"
|
||||
msgstr "~Non"
|
||||
|
||||
#: src/bfu/hierbox.c:917 src/bfu/hierbox.c:948 src/viewer/text/search.c:1013
|
||||
#: src/bfu/hierbox.c:926 src/bfu/hierbox.c:957 src/viewer/text/search.c:1013
|
||||
#: src/viewer/text/search.c:1021 src/viewer/text/search.c:1037
|
||||
#: src/viewer/text/search.c:1612
|
||||
msgid "Search"
|
||||
msgstr "Chercher"
|
||||
|
||||
#: src/bfu/hierbox.c:919 src/viewer/text/search.c:1014
|
||||
#: src/bfu/hierbox.c:928 src/viewer/text/search.c:1014
|
||||
#, c-format
|
||||
msgid "Search string '%s' not found"
|
||||
msgstr "Chaîne recherchée '%s' introuvable"
|
||||
|
||||
#: src/bfu/hierbox.c:948 src/config/dialogs.c:168 src/config/dialogs.c:357
|
||||
#: src/bfu/hierbox.c:957 src/config/dialogs.c:168 src/config/dialogs.c:357
|
||||
#: src/config/dialogs.c:504 src/cookies/dialogs.c:34 src/cookies/dialogs.c:348
|
||||
#: src/dialogs/edit.c:91 src/dialogs/edit.c:93 src/scripting/lua/core.c:373
|
||||
#: src/scripting/lua/core.c:374 src/scripting/lua/core.c:454
|
||||
@ -173,7 +173,7 @@ msgstr "Cha
|
||||
#: src/dialogs/options.c:291 src/mime/dialogs.c:130
|
||||
#: src/protocol/auth/dialogs.c:111 src/protocol/bittorrent/dialogs.c:801
|
||||
#: src/scripting/lua/core.c:378 src/scripting/lua/core.c:458
|
||||
#: src/session/download.c:544 src/session/download.c:1121
|
||||
#: src/session/download.c:544 src/session/download.c:1143
|
||||
#: src/viewer/text/search.c:1594
|
||||
msgid "~Cancel"
|
||||
msgstr "~Annuler"
|
||||
@ -187,7 +187,7 @@ 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:1118
|
||||
#: src/config/options.inc:1125 src/ecmascript/ecmascript.c:40
|
||||
#: src/config/options.inc:1125 src/ecmascript/ecmascript.c:39
|
||||
#: src/globhist/globhist.c:63 src/mime/backend/mailcap.c:93
|
||||
#: src/mime/backend/mimetypes.c:52 src/network/ssl/ssl.c:80
|
||||
msgid "Enable"
|
||||
@ -1837,7 +1837,7 @@ msgstr "Impossible d'ajouter une option ici."
|
||||
|
||||
#: src/config/dialogs.c:531 src/config/dialogs.c:943 src/cookies/dialogs.c:424
|
||||
#: src/dialogs/options.c:212 src/formhist/dialogs.c:213
|
||||
#: src/protocol/bittorrent/dialogs.c:788 src/session/download.c:1105
|
||||
#: src/protocol/bittorrent/dialogs.c:788 src/session/download.c:1127
|
||||
msgid "Sa~ve"
|
||||
msgstr "Enre~gistrer"
|
||||
|
||||
@ -2305,14 +2305,12 @@ msgstr "Editeur externe"
|
||||
msgid ""
|
||||
"Path to the executable that ELinks should launch when the user\n"
|
||||
"requests to edit a textarea with an external editor.\n"
|
||||
"\n"
|
||||
"If this is blank, ELinks will use the value of the environmental\n"
|
||||
"variable $EDITOR. If $EDITOR is empty or not set, ELinks will then\n"
|
||||
"default to \"vi\"."
|
||||
msgstr ""
|
||||
"Chemin du programme qu'ELinks doit lancer quand l'utilisateur\n"
|
||||
"demande à éditer un champ de texte avec un éditeur externe.\n"
|
||||
"\n"
|
||||
"Si vide, ELinks utilisera la valeur de la variable d'environnement\n"
|
||||
"$EDITOR. Si $EDITOR est vide ou non configurée, ELinks utilisera\n"
|
||||
"\"vi\" par défaut."
|
||||
@ -3357,15 +3355,13 @@ msgid ""
|
||||
"The format is:\n"
|
||||
"%c in the string means the current URL\n"
|
||||
"%% in the string means '%'\n"
|
||||
"\n"
|
||||
"Do _not_ put single- or double-quotes around %c."
|
||||
msgstr ""
|
||||
"Règle de passage d'URI à une commande externe.\n"
|
||||
"Le format est:\n"
|
||||
"%c dans la chaîne signifie URL courante\n"
|
||||
"%% dans la chaîne signifie '%'\n"
|
||||
"\n"
|
||||
"Ne mettez pas de simples ou doubles quotes autour de %c."
|
||||
"Ne mettez pas de simples ou doubles guillemets autour de %c."
|
||||
|
||||
#. Keep options in alphabetical order.
|
||||
#: src/config/options.inc:740
|
||||
@ -5362,31 +5358,31 @@ msgstr ""
|
||||
"Laisser à \"\" pour utiliser le style initial du document."
|
||||
|
||||
#. name:
|
||||
#: src/ecmascript/ecmascript.c:36 src/ecmascript/ecmascript.c:201
|
||||
#: src/ecmascript/ecmascript.c:35 src/ecmascript/ecmascript.c:137
|
||||
msgid "ECMAScript"
|
||||
msgstr "ECMAScript"
|
||||
|
||||
#: src/ecmascript/ecmascript.c:38
|
||||
#: src/ecmascript/ecmascript.c:37
|
||||
msgid "ECMAScript options."
|
||||
msgstr "Options d'ECMAScript."
|
||||
|
||||
#: src/ecmascript/ecmascript.c:42
|
||||
#: src/ecmascript/ecmascript.c:41
|
||||
msgid "Whether to run those scripts inside of documents."
|
||||
msgstr "Exécuter ou non ces scripts présents dans les documents."
|
||||
|
||||
#: src/ecmascript/ecmascript.c:44
|
||||
#: src/ecmascript/ecmascript.c:43
|
||||
msgid "Script error reporting"
|
||||
msgstr "Rapport d'erreur de script"
|
||||
|
||||
#: src/ecmascript/ecmascript.c:46
|
||||
#: src/ecmascript/ecmascript.c:45
|
||||
msgid "Open a message box when a script reports an error."
|
||||
msgstr "Ouvrir une boîte de message quand un script produit une erreur."
|
||||
|
||||
#: src/ecmascript/ecmascript.c:48
|
||||
#: src/ecmascript/ecmascript.c:47
|
||||
msgid "Ignore <noscript> content"
|
||||
msgstr "Ignorer le contenu de <noscript>"
|
||||
|
||||
#: src/ecmascript/ecmascript.c:50
|
||||
#: src/ecmascript/ecmascript.c:49
|
||||
msgid ""
|
||||
"Whether to ignore content enclosed by the <noscript> tag\n"
|
||||
"when ECMAScript is enabled."
|
||||
@ -5394,38 +5390,29 @@ msgstr ""
|
||||
"Ignorer ou non le contenu du tag <noscript> quand ECMAScript\n"
|
||||
"est actif."
|
||||
|
||||
#: src/ecmascript/ecmascript.c:53
|
||||
#: src/ecmascript/ecmascript.c:52
|
||||
msgid "Maximum execution time"
|
||||
msgstr "Temps maximal d'exécution"
|
||||
|
||||
#: src/ecmascript/ecmascript.c:55
|
||||
#: src/ecmascript/ecmascript.c:54
|
||||
msgid "Maximum execution time in seconds for a script."
|
||||
msgstr "Temps maximal pour l'exécution d'un script, en secondes."
|
||||
|
||||
#: src/ecmascript/ecmascript.c:57
|
||||
#: src/ecmascript/ecmascript.c:56
|
||||
msgid "Pop-up window blocking"
|
||||
msgstr "Blocage des fenêtres Javascript (popups)"
|
||||
|
||||
#: src/ecmascript/ecmascript.c:59
|
||||
#: src/ecmascript/ecmascript.c:58
|
||||
msgid "Whether to disallow scripts to open new windows or tabs."
|
||||
msgstr ""
|
||||
"Interdire ou non l'ouverture de fenêtres ou d'onglets\n"
|
||||
"par les scripts."
|
||||
|
||||
#: src/ecmascript/spidermonkey.c:92
|
||||
#, c-format
|
||||
msgid "A script embedded in the current document raised the following%s%s%s%s"
|
||||
msgstr "Un script contenu dans le document courant a provoqué%s%s%s%s"
|
||||
|
||||
#: src/ecmascript/spidermonkey.c:108
|
||||
msgid "JavaScript Error"
|
||||
msgstr "Erreur Javascript"
|
||||
|
||||
#: src/ecmascript/spidermonkey.c:127
|
||||
#: src/ecmascript/ecmascript.c:126
|
||||
msgid "JavaScript Emergency"
|
||||
msgstr "Alerte JavaScript"
|
||||
|
||||
#: src/ecmascript/spidermonkey.c:129
|
||||
#: src/ecmascript/ecmascript.c:128
|
||||
#, c-format
|
||||
msgid ""
|
||||
"A script embedded in the current document was running\n"
|
||||
@ -5438,10 +5425,19 @@ msgstr ""
|
||||
"qu'il y a un bogue dans ce script et que cela aurait pû\n"
|
||||
"bloquer ELinks, l'exécution du script a donc été interrompue."
|
||||
|
||||
#: src/ecmascript/spidermonkey/window.c:286
|
||||
#: src/ecmascript/see/window.c:242 src/ecmascript/spidermonkey/window.c:286
|
||||
msgid "JavaScript Alert"
|
||||
msgstr "Alerte JavaScript"
|
||||
|
||||
#: src/ecmascript/spidermonkey.c:162
|
||||
#, c-format
|
||||
msgid "A script embedded in the current document raised the following%s%s%s%s"
|
||||
msgstr "Un script contenu dans le document courant a provoqué%s%s%s%s"
|
||||
|
||||
#: src/ecmascript/spidermonkey.c:178
|
||||
msgid "JavaScript Error"
|
||||
msgstr "Erreur Javascript"
|
||||
|
||||
#: src/formhist/dialogs.c:67
|
||||
msgid "Forms are never saved for this URL."
|
||||
msgstr "Les formulaires ne sont jamais sauvés pour cette URL."
|
||||
@ -5988,7 +5984,7 @@ msgid "Option system"
|
||||
msgstr "Système de configuration"
|
||||
|
||||
#. name:
|
||||
#: src/mime/backend/mailcap.c:89 src/mime/backend/mailcap.c:668
|
||||
#: src/mime/backend/mailcap.c:89 src/mime/backend/mailcap.c:674
|
||||
msgid "Mailcap"
|
||||
msgstr "Mailcap"
|
||||
|
||||
@ -7128,7 +7124,7 @@ msgstr "Que voulez-vous faire avec le fichier '%s' ?"
|
||||
msgid "Information about the torrent"
|
||||
msgstr "Informations sur le torrent"
|
||||
|
||||
#: src/protocol/bittorrent/dialogs.c:763 src/session/download.c:1017
|
||||
#: src/protocol/bittorrent/dialogs.c:763 src/session/download.c:1039
|
||||
msgid "What to do?"
|
||||
msgstr "Que faire ?"
|
||||
|
||||
@ -7136,11 +7132,11 @@ msgstr "Que faire ?"
|
||||
msgid "Down~load"
|
||||
msgstr "Té~lécharger"
|
||||
|
||||
#: src/protocol/bittorrent/dialogs.c:791 src/session/download.c:1111
|
||||
#: src/protocol/bittorrent/dialogs.c:791 src/session/download.c:1133
|
||||
msgid "~Display"
|
||||
msgstr "A~fficher"
|
||||
|
||||
#: src/protocol/bittorrent/dialogs.c:795 src/session/download.c:1115
|
||||
#: src/protocol/bittorrent/dialogs.c:795 src/session/download.c:1137
|
||||
msgid "Show ~header"
|
||||
msgstr "~Montrer les en-têtes"
|
||||
|
||||
@ -7840,11 +7836,11 @@ msgid "Scripting"
|
||||
msgstr "Scripting"
|
||||
|
||||
#: src/session/download.c:234 src/session/download.c:331
|
||||
#: src/session/download.c:498 src/session/download.c:590
|
||||
#: src/session/download.c:498 src/session/download.c:593
|
||||
msgid "Download error"
|
||||
msgstr "Erreur de téléchargement"
|
||||
|
||||
#: src/session/download.c:235 src/session/download.c:591
|
||||
#: src/session/download.c:235 src/session/download.c:594
|
||||
#, c-format
|
||||
msgid ""
|
||||
"Could not create file '%s':\n"
|
||||
@ -7900,30 +7896,30 @@ msgstr "Ecraser le fichier ~original"
|
||||
msgid "~Resume download of the original file"
|
||||
msgstr "~Reprendre le téléchargement du fichier original"
|
||||
|
||||
#: src/session/download.c:1020
|
||||
#: src/session/download.c:1042
|
||||
msgid "Unknown type"
|
||||
msgstr "Type inconnu"
|
||||
|
||||
#: src/session/download.c:1037
|
||||
#: src/session/download.c:1059
|
||||
#, c-format
|
||||
msgid "What would you like to do with the file '%s' (type: %s%s%s)?"
|
||||
msgstr "Que voulez-vous faire avec le fichier '%s' (type: %s%s%s) ?"
|
||||
|
||||
#: src/session/download.c:1067
|
||||
#: src/session/download.c:1089
|
||||
#, no-c-format
|
||||
msgid "Program ('%' will be replaced by the filename)"
|
||||
msgstr "Programme ('%' sera remplacé par le nom du fichier)"
|
||||
|
||||
#: src/session/download.c:1071
|
||||
#: src/session/download.c:1093
|
||||
msgid "Block the terminal"
|
||||
msgstr "Bloquer le terminal"
|
||||
|
||||
#: src/session/download.c:1077
|
||||
#: src/session/download.c:1099
|
||||
#, c-format
|
||||
msgid "The file will be opened with the program '%s'."
|
||||
msgstr "Le fichier sera ouvert avec le programme '%s'."
|
||||
|
||||
#: src/session/download.c:1098
|
||||
#: src/session/download.c:1120
|
||||
msgid "~Open"
|
||||
msgstr "~Ouvrir"
|
||||
|
||||
|
@ -321,7 +321,7 @@ save_input_history(struct input_history *history, unsigned char *filename)
|
||||
history_file = straconcat(elinks_home, filename, NULL);
|
||||
if (!history_file) return -1;
|
||||
|
||||
ssi = secure_open(history_file, 0177);
|
||||
ssi = secure_open(history_file);
|
||||
mem_free(history_file);
|
||||
if (!ssi) return -1;
|
||||
|
||||
|
@ -94,7 +94,7 @@ bookmarks_write(struct list_head *bookmarks_list)
|
||||
file_name = straconcat(elinks_home, file_name, NULL);
|
||||
if (!file_name) return;
|
||||
|
||||
ssi = secure_open(file_name, 0177);
|
||||
ssi = secure_open(file_name);
|
||||
mem_free(file_name);
|
||||
if (!ssi) return;
|
||||
|
||||
|
@ -805,7 +805,7 @@ write_config_file(unsigned char *prefix, unsigned char *name,
|
||||
config_file = straconcat(prefix, slash, name, NULL);
|
||||
if (!config_file) goto free_cfg_str;
|
||||
|
||||
ssi = secure_open(config_file, 0177);
|
||||
ssi = secure_open(config_file);
|
||||
if (ssi) {
|
||||
secure_fputs(ssi, cfg_str);
|
||||
ret = secure_close(ssi);
|
||||
|
@ -775,7 +775,7 @@ save_cookies(void) {
|
||||
cookfile = straconcat(elinks_home, COOKIES_FILENAME, NULL);
|
||||
if (!cookfile) return;
|
||||
|
||||
ssi = secure_open(cookfile, 0177); /* rw for user only */
|
||||
ssi = secure_open(cookfile);
|
||||
mem_free(cookfile);
|
||||
if (!ssi) return;
|
||||
|
||||
|
@ -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 */
|
||||
|
||||
|
@ -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
|
||||
|
@ -7,6 +7,8 @@
|
||||
|
||||
struct dom_stack;
|
||||
|
||||
/* API Doc :: dom-stack */
|
||||
|
||||
/** DOM stack callback
|
||||
*
|
||||
* Used by contexts, for 'hooking' into the node traversing. */
|
||||
|
@ -2,9 +2,9 @@ top_builddir=../..
|
||||
include $(top_builddir)/Makefile.config
|
||||
INCLUDES += $(SPIDERMONKEY_CFLAGS)
|
||||
|
||||
SUBDIRS-$(CONFIG_SPIDERMONKEY) += spidermonkey
|
||||
SUBDIRS-$(CONFIG_ECMASCRIPT_SMJS) += spidermonkey
|
||||
SUBDIRS-$(CONFIG_SEE) += see
|
||||
OBJS-$(CONFIG_SPIDERMONKEY) += spidermonkey.o
|
||||
OBJS-$(CONFIG_ECMASCRIPT_SMJS) += spidermonkey.o
|
||||
OBJS-$(CONFIG_SEE) += see.o
|
||||
OBJS = ecmascript.o
|
||||
|
||||
|
@ -177,7 +177,6 @@ see_eval(struct ecmascript_interpreter *interpreter,
|
||||
struct SEE_input *input = SEE_input_elinks(interp, code->source);
|
||||
SEE_try_context_t try_ctxt;
|
||||
struct SEE_value result;
|
||||
struct SEE_value v;
|
||||
|
||||
g->exec_start = time(NULL);
|
||||
SEE_TRY(interp, try_ctxt) {
|
||||
|
@ -138,6 +138,8 @@ document_get(struct SEE_interpreter *interp, struct SEE_object *o,
|
||||
}
|
||||
} else if (p == s_forms) {
|
||||
SEE_SET_OBJECT(res, doc->forms);
|
||||
} else if (p == s_write) {
|
||||
SEE_SET_OBJECT(res, doc->write);
|
||||
} else {
|
||||
struct form *form;
|
||||
unsigned char *string = SEE_string_to_unsigned_char(p);
|
||||
|
@ -247,6 +247,14 @@ input_get(struct SEE_interpreter *interp, struct SEE_object *o,
|
||||
} else if (p == s_value) {
|
||||
str = string_to_SEE_string(interp, fs->value);
|
||||
SEE_SET_STRING(res, str);
|
||||
} else if (p == s_blur) {
|
||||
SEE_SET_OBJECT(res, input->blur);
|
||||
} else if (p == s_click) {
|
||||
SEE_SET_OBJECT(res, input->click);
|
||||
} else if (p == s_focus) {
|
||||
SEE_SET_OBJECT(res, input->focus);
|
||||
} else if (p == s_select) {
|
||||
SEE_SET_OBJECT(res, input->select);
|
||||
}
|
||||
}
|
||||
|
||||
@ -581,6 +589,10 @@ form_elems_get(struct SEE_interpreter *interp, struct SEE_object *o,
|
||||
if (p == s_length) {
|
||||
SEE_number_t length = list_size(&form->items);
|
||||
SEE_SET_NUMBER(res, length);
|
||||
} else if (p == s_item) {
|
||||
SEE_SET_OBJECT(res, jsfe->item);
|
||||
} else if (p == s_namedItem) {
|
||||
SEE_SET_OBJECT(res, jsfe->namedItem);
|
||||
} else {
|
||||
unsigned char *string = SEE_string_to_unsigned_char(p);
|
||||
struct SEE_value argv;
|
||||
@ -691,11 +703,16 @@ forms_get(struct SEE_interpreter *interp, struct SEE_object *o,
|
||||
struct view_state *vs = g->win->vs;
|
||||
struct document_view *doc_view = vs->doc_view;
|
||||
struct document *document = doc_view->document;
|
||||
struct js_forms_object *fo = (struct js_forms_object *)o;
|
||||
|
||||
checktime(interp);
|
||||
if (p == s_length) {
|
||||
SEE_number_t length = list_size(&document->forms);
|
||||
SEE_SET_NUMBER(res, length);
|
||||
} else if (p == s_item) {
|
||||
SEE_SET_OBJECT(res, fo->item);
|
||||
} else if (p == s_namedItem) {
|
||||
SEE_SET_OBJECT(res, fo->namedItem);
|
||||
} else {
|
||||
unsigned char *string = SEE_string_to_unsigned_char(p);
|
||||
struct SEE_value argv;
|
||||
|
@ -6,6 +6,9 @@
|
||||
|
||||
#include <see/see.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "elinks.h"
|
||||
|
||||
#include "ecmascript/see/input.h"
|
||||
#include "util/memory.h"
|
||||
|
||||
|
@ -138,7 +138,7 @@ window_get(struct SEE_interpreter *interp, struct SEE_object *o,
|
||||
SEE_SET_BOOLEAN(res, 0);
|
||||
} else if (p == s_self) {
|
||||
SEE_SET_OBJECT(res, o);
|
||||
} else if (p == s_top || p == s_parent) {
|
||||
} else if (p == s_parent || p == s_top) {
|
||||
struct document_view *doc_view = vs->doc_view;
|
||||
struct document_view *top_view = doc_view->session->doc_view;
|
||||
struct js_window_object *newjsframe;
|
||||
@ -167,6 +167,8 @@ window_get(struct SEE_interpreter *interp, struct SEE_object *o,
|
||||
SEE_SET_OBJECT(res, win->alert);
|
||||
} else if (p == s_open) {
|
||||
SEE_SET_OBJECT(res, win->open);
|
||||
} else if (p == s_location) {
|
||||
SEE_OBJECT_GET(interp, interp->Global, s_location, res);
|
||||
} else {
|
||||
unsigned char *frame = SEE_string_to_unsigned_char(p);
|
||||
struct document_view *doc_view = vs->doc_view;
|
||||
@ -225,7 +227,8 @@ js_window_alert(struct SEE_interpreter *interp, struct SEE_object *self,
|
||||
struct SEE_object *thisobj, int argc, struct SEE_value **argv,
|
||||
struct SEE_value *res)
|
||||
{
|
||||
struct js_window_object *win = (struct js_window_object *)thisobj;
|
||||
struct global_object *g = (struct global_object *)interp;
|
||||
struct js_window_object *win = g->win;
|
||||
struct view_state *vs = win->vs;
|
||||
unsigned char *string;
|
||||
|
||||
@ -249,11 +252,12 @@ js_window_open(struct SEE_interpreter *interp, struct SEE_object *self,
|
||||
struct SEE_object *thisobj, int argc, struct SEE_value **argv,
|
||||
struct SEE_value *res)
|
||||
{
|
||||
struct js_window_object *win = (struct js_window_object*)thisobj;
|
||||
struct global_object *g = (struct global_object *)interp;
|
||||
struct js_window_object *win = g->win;
|
||||
struct view_state *vs = win->vs;
|
||||
struct document_view *doc_view = vs->doc_view;
|
||||
struct session *ses = doc_view->session;
|
||||
unsigned char *target = "";
|
||||
unsigned char *target = NULL;
|
||||
unsigned char *url, *url2;
|
||||
struct uri *uri;
|
||||
#if 0
|
||||
@ -261,7 +265,7 @@ js_window_open(struct SEE_interpreter *interp, struct SEE_object *self,
|
||||
static int ratelimit_count;
|
||||
#endif
|
||||
checktime(interp);
|
||||
SEE_SET_UNDEFINED(res);
|
||||
SEE_SET_OBJECT(res, (struct SEE_object *)win);
|
||||
if (get_opt_bool("ecmascript.block_window_opening")) {
|
||||
#ifdef CONFIG_LEDS
|
||||
set_led_value(ses->status.popup_led, 'P');
|
||||
@ -312,6 +316,7 @@ js_window_open(struct SEE_interpreter *interp, struct SEE_object *self,
|
||||
}
|
||||
}
|
||||
|
||||
mem_free_if(target);
|
||||
if (!get_cmd_opt_bool("no-connect")
|
||||
&& !get_cmd_opt_bool("no-home")
|
||||
&& !get_cmd_opt_bool("anonymous")
|
||||
@ -355,6 +360,17 @@ init_js_window_object(struct ecmascript_interpreter *interpreter)
|
||||
|
||||
g->win->alert = SEE_cfunction_make(interp, js_window_alert, s_alert, 1);
|
||||
g->win->open = SEE_cfunction_make(interp, js_window_open, s_open, 3);
|
||||
|
||||
SEE_OBJECT_GET(interp, (struct SEE_object *)g->win, s_top, &v);
|
||||
SEE_OBJECT_PUT(interp, interp->Global, s_top, &v, 0);
|
||||
|
||||
SEE_OBJECT_GET(interp, (struct SEE_object *)g->win, s_self, &v);
|
||||
SEE_OBJECT_PUT(interp, interp->Global, s_self, &v, 0);
|
||||
|
||||
SEE_OBJECT_GET(interp, (struct SEE_object *)g->win, s_alert, &v);
|
||||
SEE_OBJECT_PUT(interp, interp->Global, s_alert, &v, 0);
|
||||
SEE_OBJECT_GET(interp, (struct SEE_object *)g->win, s_open, &v);
|
||||
SEE_OBJECT_PUT(interp, interp->Global, s_open, &v, 0);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -225,7 +225,7 @@ save_formhist_to_file(void)
|
||||
file = straconcat(elinks_home, FORMS_HISTORY_FILENAME, NULL);
|
||||
if (!file) return 0;
|
||||
|
||||
ssi = secure_open(file, 0177);
|
||||
ssi = secure_open(file);
|
||||
mem_free(file);
|
||||
if (!ssi) return 0;
|
||||
|
||||
|
@ -369,7 +369,7 @@ write_global_history(void)
|
||||
file_name = straconcat(elinks_home, GLOBAL_HISTORY_FILENAME, NULL);
|
||||
if (!file_name) return;
|
||||
|
||||
ssi = secure_open(file_name, 0177); /* rw for user only */
|
||||
ssi = secure_open(file_name);
|
||||
mem_free(file_name);
|
||||
if (!ssi) return;
|
||||
|
||||
|
@ -371,7 +371,7 @@ elinks_usleep(unsigned long useconds)
|
||||
static int
|
||||
bind_to_af_unix(void)
|
||||
{
|
||||
mode_t saved_mask = umask(0177);
|
||||
mode_t saved_mask = umask(S_IXUSR | S_IRWXG | S_IRWXO);
|
||||
int attempts = 0;
|
||||
int pf = get_address(&s_info_listen, ADDR_IP_SERVER);
|
||||
|
||||
|
@ -10,6 +10,15 @@
|
||||
#endif
|
||||
|
||||
/* File permission flags not available on win32 systems. */
|
||||
#ifndef S_IRUSR
|
||||
#define S_IRUSR 0000400 /* R for user */
|
||||
#endif
|
||||
#ifndef S_IWUSR
|
||||
#define S_IWUSR 0000200 /* W for user */
|
||||
#endif
|
||||
#ifndef S_IXUSR
|
||||
#define S_IXUSR 0000100 /* X for user */
|
||||
#endif
|
||||
#ifndef S_ISUID
|
||||
#define S_ISUID 0004000 /* set user id on execution */
|
||||
#endif
|
||||
@ -38,4 +47,14 @@
|
||||
#define S_ISVTX 0001000 /* save swapped text even after use */
|
||||
#endif
|
||||
|
||||
#ifndef S_IRWXU
|
||||
#define S_IRWXU (S_IRUSR | S_IWUSR | S_IXUSR)
|
||||
#endif
|
||||
#ifndef S_IRWXG
|
||||
#define S_IRWXG (S_IRGRP | S_IWGRP | S_IXGRP)
|
||||
#endif
|
||||
#ifndef S_IRWXO
|
||||
#define S_IRWXO (S_IROTH | S_IWOTH | S_IXOTH)
|
||||
#endif
|
||||
|
||||
#endif /* EL__OSDEP_STAT_H */
|
||||
|
@ -657,14 +657,14 @@ open_bittorrent_file(struct bittorrent_meta *meta, struct bittorrent_file *file,
|
||||
|
||||
if (!name) return -1;
|
||||
|
||||
fd = open(name, flags, S_IREAD | S_IWRITE);
|
||||
fd = open(name, flags, S_IRUSR | S_IWUSR);
|
||||
if (fd == -1) {
|
||||
/* 99% of the time the file will already exist so special case
|
||||
* the directory and file creation. */
|
||||
if (errno == ENOENT
|
||||
&& trans == BITTORRENT_WRITE
|
||||
&& create_bittorrent_path(name) == BITTORRENT_STATE_OK)
|
||||
fd = open(name, flags | O_CREAT, S_IREAD | S_IWRITE);
|
||||
fd = open(name, flags | O_CREAT, S_IRUSR | S_IWUSR);
|
||||
}
|
||||
|
||||
mem_free(name);
|
||||
|
@ -299,7 +299,7 @@ execute_cgi(struct connection *conn)
|
||||
scriptlen = strlen(script);
|
||||
|
||||
if (stat(script, &buf) || !(S_ISREG(buf.st_mode))
|
||||
|| !(buf.st_mode & S_IEXEC)) {
|
||||
|| !(buf.st_mode & S_IXUSR)) {
|
||||
mem_free(script);
|
||||
return 1;
|
||||
}
|
||||
|
@ -1034,7 +1034,7 @@ display_dir_entry(struct cache_entry *cached, off_t *pos, int *tries,
|
||||
add_char_to_string(&string, ftp_info->type);
|
||||
|
||||
if (ftp_info->permissions) {
|
||||
int p = ftp_info->permissions;
|
||||
mode_t p = ftp_info->permissions;
|
||||
|
||||
#define FTP_PERM(perms, buffer, flag, index, id) \
|
||||
if ((perms) & (flag)) (buffer)[(index)] = (id);
|
||||
|
@ -138,7 +138,7 @@ enum ftp_unix {
|
||||
static int
|
||||
parse_ftp_unix_permissions(const unsigned char *src, int len)
|
||||
{
|
||||
int perms = 0;
|
||||
mode_t perms = 0;
|
||||
|
||||
if (len != 9
|
||||
&& !(len == 10 && src[9] == '+')) /* ACL tag */
|
||||
@ -583,12 +583,12 @@ parse_ftp_winnt_response(struct ftp_file_info *info, unsigned char *src, int len
|
||||
|
||||
if (*src == '<') {
|
||||
info->type = FTP_FILE_DIRECTORY;
|
||||
info->permissions = 0755;
|
||||
info->permissions = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH;
|
||||
|
||||
} else if (isdigit(*src)) {
|
||||
info->type = FTP_FILE_PLAINFILE;
|
||||
info->size = parse_ftp_number(&src, end, 0, LONG_MAX);
|
||||
info->permissions = 0644;
|
||||
info->permissions = S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH;
|
||||
|
||||
} else {
|
||||
info->type = FTP_FILE_UNKNOWN;
|
||||
|
@ -22,7 +22,7 @@ struct ftp_file_info {
|
||||
long size; /* File size. -1 if unknown. */
|
||||
time_t mtime; /* Modification time */
|
||||
unsigned int local_time_zone:1; /* What format the mtime is in */
|
||||
int permissions; /* File permissions */
|
||||
mode_t permissions; /* File permissions */
|
||||
};
|
||||
|
||||
#define FTP_SIZE_UNKNOWN -1
|
||||
@ -30,10 +30,10 @@ struct ftp_file_info {
|
||||
/* File info initializers: */
|
||||
|
||||
#define INIT_FTP_FILE_INFO \
|
||||
{ FTP_FILE_UNKNOWN, INIT_STRING("", 0), INIT_STRING("", 0), FTP_SIZE_UNKNOWN, 0, 0, 0644 }
|
||||
{ FTP_FILE_UNKNOWN, INIT_STRING("", 0), INIT_STRING("", 0), FTP_SIZE_UNKNOWN, 0, 0, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH }
|
||||
|
||||
#define INIT_FTP_FILE_INFO_ROOT \
|
||||
{ FTP_FILE_DIRECTORY, INIT_STRING("..", 2), INIT_STRING("", 0), FTP_SIZE_UNKNOWN, 0, 0, 0755 }
|
||||
{ FTP_FILE_DIRECTORY, INIT_STRING("..", 2), INIT_STRING("", 0), FTP_SIZE_UNKNOWN, 0, 0, S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH }
|
||||
|
||||
struct ftp_file_info *
|
||||
parse_ftp_file_info(struct ftp_file_info *info, unsigned char *src, int len);
|
||||
|
@ -26,7 +26,7 @@
|
||||
|
||||
/* Error reporting. */
|
||||
|
||||
#if defined(CONFIG_RUBY) || defined(CONFIG_SEE) || defined(CONFIG_ECMASCRIPT)
|
||||
#if defined(CONFIG_RUBY) || defined(CONFIG_SEE) || defined(CONFIG_SM_SCRIPTING)
|
||||
void
|
||||
report_scripting_error(struct module *module, struct session *ses,
|
||||
unsigned char *msg)
|
||||
@ -77,7 +77,7 @@ static struct module *scripting_modules[] = {
|
||||
#ifdef CONFIG_RUBY
|
||||
&ruby_scripting_module,
|
||||
#endif
|
||||
#ifdef CONFIG_ECMASCRIPT
|
||||
#ifdef CONFIG_SM_SCRIPTING
|
||||
&smjs_scripting_module,
|
||||
#endif
|
||||
NULL,
|
||||
|
@ -272,7 +272,7 @@ file_read_line(unsigned char *line, size_t *size, FILE *file, int *lineno)
|
||||
int
|
||||
safe_mkstemp(unsigned char *template)
|
||||
{
|
||||
mode_t saved_mask = umask(0177);
|
||||
mode_t saved_mask = umask(S_IXUSR | S_IRWXG | S_IRWXO);
|
||||
int fd = mkstemp(template);
|
||||
|
||||
umask(saved_mask);
|
||||
@ -321,12 +321,12 @@ stat_mode(struct string *string, struct stat *stp)
|
||||
unsigned char rwx[10] = "---------";
|
||||
|
||||
if (stp) {
|
||||
int mode = stp->st_mode;
|
||||
int shift;
|
||||
mode_t mode = stp->st_mode;
|
||||
unsigned int shift;
|
||||
|
||||
/* Set permissions attributes for user, group and other */
|
||||
for (shift = 0; shift <= 6; shift += 3) {
|
||||
int m = mode << shift;
|
||||
mode_t m = mode << shift;
|
||||
|
||||
if (m & S_IRUSR) rwx[shift + 0] = 'r';
|
||||
if (m & S_IWUSR) rwx[shift + 1] = 'w';
|
||||
@ -607,7 +607,7 @@ mkalldirs(const unsigned char *path)
|
||||
|
||||
p[pos] = 0;
|
||||
|
||||
ret = mkdir(p, S_IREAD | S_IWRITE | S_IEXEC);
|
||||
ret = mkdir(p, S_IRWXU);
|
||||
|
||||
p[pos] = separator;
|
||||
|
||||
|
@ -68,8 +68,8 @@ enum secsave_errno secsave_errno = SS_ERR_NONE;
|
||||
|
||||
/* Open a file for writing in a secure way. It returns a pointer to a structure
|
||||
* secure_save_info on success, or NULL on failure. */
|
||||
struct secure_save_info *
|
||||
secure_open(unsigned char *file_name, mode_t mask)
|
||||
static struct secure_save_info *
|
||||
secure_open_umask(unsigned char *file_name, mode_t mask)
|
||||
{
|
||||
mode_t saved_mask;
|
||||
struct stat st;
|
||||
@ -203,6 +203,11 @@ end:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
struct secure_save_info *
|
||||
secure_open(unsigned char *file_name)
|
||||
{
|
||||
return secure_open_umask(file_name, S_IXUSR | S_IRWXG | S_IRWXO);
|
||||
}
|
||||
|
||||
/* Close a file opened with secure_open, and return 0 on success, errno
|
||||
* or -1 on failure. */
|
||||
|
@ -31,7 +31,8 @@ struct secure_save_info {
|
||||
int secure_save; /* use secure save for this file */
|
||||
};
|
||||
|
||||
struct secure_save_info *secure_open(unsigned char *, mode_t);
|
||||
struct secure_save_info *secure_open(unsigned char *);
|
||||
|
||||
int secure_close(struct secure_save_info *);
|
||||
|
||||
int secure_fputs(struct secure_save_info *, const char *);
|
||||
|
Loading…
Reference in New Issue
Block a user