From ef685396f38ad76f5942d7a12ebbf0e354bd29c7 Mon Sep 17 00:00:00 2001 From: Laurent MONIN Date: Wed, 11 Jan 2006 20:26:24 +0100 Subject: [PATCH 01/59] Update to recent CONFIG_* macros. --- Makefile.config.in | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/Makefile.config.in b/Makefile.config.in index 02fec130..fab7bf29 100644 --- a/Makefile.config.in +++ b/Makefile.config.in @@ -16,7 +16,7 @@ top_srcdir = $(PATHPREFIX)@top_srcdir@ SRCPATH = $(shell cd $(top_srcdir)/$(RELPATH) && pwd) ifeq ($(SRCPATH),$(CURPATH)) -srcdir = +srcdir = else srcdir = $(top_srcdir)/$(RELPATH) endif @@ -93,11 +93,12 @@ XMLTO = @XMLTO@ X_CFLAGS = @X_CFLAGS@ XGETTEXT = @XGETTEXT@ -# :r !grep AC_SUBST\(CONFIG_ configure.in | sed 's/.*(\(.*\))$/\1 = @\1@/' | sort | uniq +# :r !grep '(CONFIG_[A-Z0-9_]\+[^A-Z0-9_]' configure.in | sed 's/^.*(\(CONFIG_[A-Z0-9_]\+\)[^A-Z0-9_].*$/\1 = @\1@/' | sort | uniq + CONFIG_256_COLORS = @CONFIG_256_COLORS@ +CONFIG_88_COLORS = @CONFIG_88_COLORS@ CONFIG_ASCIIDOC = @CONFIG_ASCIIDOC@ CONFIG_BACKTRACE = @CONFIG_BACKTRACE@ -CONFIG_OS_BEOS = @CONFIG_OS_BEOS@ CONFIG_BITTORRENT = @CONFIG_BITTORRENT@ CONFIG_BOOKMARKS = @CONFIG_BOOKMARKS@ CONFIG_BZIP2 = @CONFIG_BZIP2@ @@ -106,6 +107,7 @@ CONFIG_COOKIES = @CONFIG_COOKIES@ CONFIG_CSS = @CONFIG_CSS@ CONFIG_DATA = @CONFIG_DATA@ CONFIG_DEBUG = @CONFIG_DEBUG@ +CONFIG_DOC = @CONFIG_DOC@ CONFIG_DOM = @CONFIG_DOM@ CONFIG_ECMASCRIPT = @CONFIG_ECMASCRIPT@ CONFIG_ECMASCRIPT_SMJS = @CONFIG_ECMASCRIPT_SMJS@ @@ -116,44 +118,48 @@ CONFIG_FORMHIST = @CONFIG_FORMHIST@ CONFIG_FTP = @CONFIG_FTP@ CONFIG_GLOBHIST = @CONFIG_GLOBHIST@ CONFIG_GNUTLS = @CONFIG_GNUTLS@ +CONFIG_GNUTLS_OPENSSL_COMPAT = @CONFIG_GNUTLS_OPENSSL_COMPAT@ CONFIG_GOPHER = @CONFIG_GOPHER@ -CONFIG_SCRIPTING_GUILE = @CONFIG_SCRIPTING_GUILE@ +CONFIG_GPM = @CONFIG_GPM@ CONFIG_GZIP = @CONFIG_GZIP@ CONFIG_HTML_HIGHLIGHT = @CONFIG_HTML_HIGHLIGHT@ +CONFIG_IDN = @CONFIG_IDN@ CONFIG_INTERLINK = @CONFIG_INTERLINK@ CONFIG_IPV6 = @CONFIG_IPV6@ CONFIG_JW = @CONFIG_JW@ CONFIG_LEDS = @CONFIG_LEDS@ -CONFIG_SCRIPTING_LUA = @CONFIG_SCRIPTING_LUA@ CONFIG_MAILCAP = @CONFIG_MAILCAP@ +CONFIG_MANUAL = @CONFIG_MANUAL@ CONFIG_MARKS = @CONFIG_MARKS@ CONFIG_MD5 = @CONFIG_MD5@ CONFIG_MIMETYPES = @CONFIG_MIMETYPES@ CONFIG_MOUSE = @CONFIG_MOUSE@ -CONFIG_NLS = @CONFIG_NLS@ CONFIG_NNTP = @CONFIG_NNTP@ CONFIG_NO_ROOT_EXEC = @CONFIG_NO_ROOT_EXEC@ CONFIG_OPENSSL = @CONFIG_OPENSSL@ +CONFIG_OS_BEOS = @CONFIG_OS_BEOS@ CONFIG_OS_OS2 = @CONFIG_OS_OS2@ -CONFIG_OWN_LIBC = @CONFIG_OWN_LIBC@ -CONFIG_SCRIPTING_PERL = @CONFIG_SCRIPTING_PERL@ -CONFIG_POD2HTML = @CONFIG_POD2HTML@ -CONFIG_SCRIPTING_PYTHON = @CONFIG_SCRIPTING_PYTHON@ CONFIG_OS_RISCOS = @CONFIG_OS_RISCOS@ -CONFIG_SCRIPTING_RUBY = @CONFIG_SCRIPTING_RUBY@ +CONFIG_OS_UNIX = @CONFIG_OS_UNIX@ +CONFIG_OS_WIN32 = @CONFIG_OS_WIN32@ +CONFIG_OWN_LIBC = @CONFIG_OWN_LIBC@ +CONFIG_POD2HTML = @CONFIG_POD2HTML@ CONFIG_SCANNER = @CONFIG_SCANNER@ CONFIG_SCRIPTING = @CONFIG_SCRIPTING@ +CONFIG_SCRIPTING_GUILE = @CONFIG_SCRIPTING_GUILE@ +CONFIG_SCRIPTING_LUA = @CONFIG_SCRIPTING_LUA@ +CONFIG_SCRIPTING_PERL = @CONFIG_SCRIPTING_PERL@ +CONFIG_SCRIPTING_PYTHON = @CONFIG_SCRIPTING_PYTHON@ +CONFIG_SCRIPTING_RUBY = @CONFIG_SCRIPTING_RUBY@ +CONFIG_SCRIPTING_SPIDERMONKEY = @CONFIG_SCRIPTING_SPIDERMONKEY@ CONFIG_SEE = @CONFIG_SEE@ CONFIG_SHA1 = @CONFIG_SHA1@ CONFIG_SMALL = @CONFIG_SMALL@ CONFIG_SMB = @CONFIG_SMB@ -CONFIG_SCRIPTING_SPIDERMONKEY = @CONFIG_SCRIPTING_SPIDERMONKEY@ CONFIG_SPIDERMONKEY = @CONFIG_SPIDERMONKEY@ CONFIG_SSL = @CONFIG_SSL@ CONFIG_SYSMOUSE = @CONFIG_SYSMOUSE@ -CONFIG_OS_UNIX = @CONFIG_OS_UNIX@ CONFIG_URI_REWRITE = @CONFIG_URI_REWRITE@ -CONFIG_OS_WIN32 = @CONFIG_OS_WIN32@ CONFIG_XBEL_BOOKMARKS = @CONFIG_XBEL_BOOKMARKS@ CONFIG_XMLTO = @CONFIG_XMLTO@ From 018c4268b15b5ac7e169b8acaa0b5431ed400f11 Mon Sep 17 00:00:00 2001 From: Laurent MONIN Date: Wed, 11 Jan 2006 20:47:58 +0100 Subject: [PATCH 02/59] Add missing CONFIG_NLS. --- Makefile.config.in | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Makefile.config.in b/Makefile.config.in index fab7bf29..03f88d32 100644 --- a/Makefile.config.in +++ b/Makefile.config.in @@ -93,6 +93,9 @@ XMLTO = @XMLTO@ X_CFLAGS = @X_CFLAGS@ XGETTEXT = @XGETTEXT@ +#Warning: this one is not in configure.in so following line will not generate it +CONFIG_NLS = @CONFIG_NLS@ + # :r !grep '(CONFIG_[A-Z0-9_]\+[^A-Z0-9_]' configure.in | sed 's/^.*(\(CONFIG_[A-Z0-9_]\+\)[^A-Z0-9_].*$/\1 = @\1@/' | sort | uniq CONFIG_256_COLORS = @CONFIG_256_COLORS@ From cae0d9d8a66add9f3d5f3bbcbd81a15316161918 Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 03:15:30 +0100 Subject: [PATCH 03/59] Add some more comments --- doc/asciidoc.conf | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/doc/asciidoc.conf b/doc/asciidoc.conf index 3d20da0c..fa6870fe 100644 --- a/doc/asciidoc.conf +++ b/doc/asciidoc.conf @@ -1,17 +1,33 @@ # AsciiDoc configuration file # Copyright (c) Jonas Fonseca , 2006 -# The elink macro can have optional {0} value, that is what +# This file sets the following ELinks specific AsciiDoc macros: +# +# General purpose: +# - man:page[section]: which is used for linking between ELinks manpages. +# +# API Doc: +# - id:[] +# - enum:[] +# - func:[] +# - struct:[] +# - macro:[] +# - typedef:[] +# - ref:[] + +# Some macros can have optional {0} value, that is what # the {0%...} and {0#...} handles. ############################################################################# # DocBook ifdef::backend-docbook[] + +# No interlinking between elinks manpages [man-inlinemacro] {target}({0}) -## For manpages use less verbose linking +# For manpages use less verbose linking ifdef::doctype-manpage[] [link-inlinemacro] {0%<{target}>} @@ -31,9 +47,13 @@ endif::backend-docbook[] # XHTML11 ifdef::backend-xhtml11[] + +# Use the man:[] macro to link between elinks manpages [man-inlinemacro] {target}({0}) +# API Doc macros + [id-inlinemacro] {0} @@ -54,4 +74,5 @@ ifdef::backend-xhtml11[] [ref-inlinemacro] {0} + endif::backend-xhtml11[] From 3e202cd2ef177eb6d9ad79f28f3253ea72fed603 Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 03:26:58 +0100 Subject: [PATCH 04/59] Include osdep/stat.h to get S_* macros --- src/protocol/ftp/ftp-parser.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/protocol/ftp/ftp-parser.c b/src/protocol/ftp/ftp-parser.c index c254390c..197466a5 100644 --- a/src/protocol/ftp/ftp-parser.c +++ b/src/protocol/ftp/ftp-parser.c @@ -11,6 +11,7 @@ #include "elinks.h" +#include "osdep/stat.h" #include "protocol/ftp/parse.h" From 70a0f339e8eff757d43e40f965f49184678a853b Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 03:28:23 +0100 Subject: [PATCH 05/59] Define a basic_dependency template to simplify setup of default rules --- Makefile.lib | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/Makefile.lib b/Makefile.lib index 4cedf912..e8709e0c 100644 --- a/Makefile.lib +++ b/Makefile.lib @@ -201,30 +201,25 @@ endif # Recursion: RULES = all install clean cleanall init check test -RECRULES = $(addsuffix -recursive,$(RULES)) -.PHONY: $(RECRULES) +# Setup the basic dependencies. +define basic_dependency +.PHONY: $(1) $(1)-recursive + +# First decend subdirs, then do all the default stuff and finally do any local +# hooks which can then depend on the default hook making things. +$(1): $(1)-recursive $(1)-default $(1)-local # The -recursive rules decend all subdirs. -$(RECRULES): -ifdef SUBDIRS +$(1)-recursive: @$(foreach subdir,$(sort $(SUBDIRS)), \ - $(call ncmd,recmake,$(subdir),$(subst -recursive,,$@)) || exit 1;) -endif - -# Setup the default sub commands dependency. First decend subdirs then do all -# the default stuff and finally do any local hooks. -recdeps = $1-recursive $1-default $1-local -all: $(call recdeps,all) -check: $(call recdeps,check) -cleanall: $(call recdeps,cleanall) -clean: $(call recdeps,clean) -init: $(call recdeps,init) -install: $(call recdeps,install) -test: $(call recdeps,test) + $(call ncmd,recmake,$(subdir),$(1)) || exit 1;) # Dummy rules for local hooks -$(addsuffix -local,$(RULES)): +$(1)-local: +endef + +$(foreach rule,$(RULES),$(eval $(call basic_dependency,$(rule)))) # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. From 42b4ff43ae73186dbf05f7c7060145355751cd56 Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 04:49:23 +0100 Subject: [PATCH 06/59] Retire index.txt Put the remaining parts which didn't already get reused into manual.txt and base a largely rewritten README on the file listing TOC. --- doc/README | 98 ++++++++++++++++++++++++++++++++++++++++++++------ doc/index.txt | 91 ---------------------------------------------- doc/manual.txt | 7 ++-- 3 files changed, 91 insertions(+), 105 deletions(-) delete mode 100644 doc/index.txt diff --git a/doc/README b/doc/README index 76bc7347..1158e00a 100644 --- a/doc/README +++ b/doc/README @@ -4,25 +4,101 @@ There is only limited documentation available for ELinks so far, sorry. It basically consists of the documents in this directory and the features.conf, README and INSTALL files in the project's root directory. -The files you will find in this directory are manpages living in the man/ -directory and a bunch of .html and especially .txt (wait, you expect HTML -browser to carry its documentation around in HTML?) documents. The index.txt -file contains the table of contents which should help you navigating between -the files. +You are encouraged to get a copy of the ELinks manual. It tries to be a +complete book of all there is to know about ELinks. For example, most files +listed in the next section is in some way part of the ELinks manual. -Tools ------ +Instructions on building the manual is given below. If you do not intend to +build it yourself either access it on the ELinks homepage or, if you +downloaded ELinks via a tarball, the manual should be in the html/ directory. -The manual is written in asciidoc, however you will also need xmlto to process -docbook XML generated by asciidoc into manpages and the html-chunked manual. -If you want to translate .pod files you need pod2html. + +Where to start +-------------- + +This sections tries to give a quick overview of important files you will find +in this directory or it's children. + + - Man pages (*): + + elinks(1) ................................... man/man1/elinks.1 + elinks.conf(5) .............................. man/man5/elinks.conf.5 + elinkskeys(5) ............................... man/man5/elinkskeys.5 + + Man pages are best viewed with the man program. The easiest way to do this + is by telling the man program to look for man pages in the doc/man + directory by using the -M switch. If you are standing in the top-level + directory, you can do this by invoking the man program using: + + man -M doc/man elinks.conf + + - User's Guide: + + Getting ELinks up and running................ installation.txt + Introduction to the World of ELinks ......... introduction.txt + Frequently Asked Questions .................. faq.txt + JavaScript/ECMAScript in ELinks ............. ecmascript.txt + Notes on User Feedback ...................... feedback.txt + The Smallest Binary Quest Spoilerbook ....... small.txt + + Note: The ELinks manual really should be read in one of the generated + formats: html, html-chunked or pdf, however the entry point can be found in + manual.txt and might be of some help, when deciding what other .txt + documents to read in this directory. + + - Developer's Guide: + + Introduction to ELinks Developing ........... dev-intro.txt + The Demented Guide to Source Hacking ........ hacking.txt + + The developing intro tries to explain some of the basic concepts in the + ELinks internal. While the hacking guide contains great deal about general + source code structure and especially guidelines regarding coding style, + submitting patches etc., thus every aspiring developer should take the + pains to read through it, do not forget to also look for README and similar + text files in the subdirectories containing the relevant sources for + detailed notes regarding given modules/subsystems. + + The Lua Scripting Book ...................... lua-scripting.txt + Events Reference Sheet ...................... events.txt + + The above covers internal scripting, by which we mean scripting of the + browser internals through embedded Lua, Guile or Perl scripts. ECMAScript + scripts embedded in documents have nothing to do with that. + + +Building documentation +---------------------- + +The following tools are used for generating documentation in various formats: + + - asciidoc: the basic tool for lifting the .txt files to other formats. + - xmlto: used for outputting chunked HTML and man pages. + - jw: used for pdf documents. + - pod2html: used for perl docs. All these tools are checked by configure, thus to successfully build all the possible documentation (with the tools available on the system), just run $ make all-docs -in the doc/ directory. +in the doc/ directory. It will build, if possibly, the manual in the following +manual formats (with tool requirements listed): + + - HTML one-file (asciidoc) + - HTML chunked / multiple files (asciidoc + xmlto) + - PDF (asciidoc + jw) + +and the following man page formats: + + - HTML (asciidoc) + - man / groff (asciidoc + xmlto) + +Note: You do not need to build manpages. They are shipped with ELinks. + +Note: You must first build the ELinks binary for "make all-docs" to work +successfully. The binary is used for getting option documentation. + Contributing ------------ diff --git a/doc/index.txt b/doc/index.txt deleted file mode 100644 index 00b5dc1e..00000000 --- a/doc/index.txt +++ /dev/null @@ -1,91 +0,0 @@ - - - The ELinks Manual - - -Welcome! This is the entry point for the current humble ELinks manual. -It is by no way complete, it is not even very homogeneous and it should -be eventually superseded by a complete ELinks Book, which you can find -in the book/ subdirectory in a very prenatal stage. - -There was a complete (or from a large part complete) manual for the -Links 0.82 once, you can still find it at: - - http://links.sourceforge.net/docs/manual-0.82-en/index.html - -While large parts of it do not apply anymore, you may still find some -relevant information there. - -You may also refer to the manual page for a very quick reference, -however little effort is done to keep it always up-to-date. -On the other hand, the built-in documentation is _always_ up-to-date. -Check the --long-help and --config-help ELinks command-line arguments. - - -Table of contents -~~~~~~~~~~~~~~~~~ - -Introduction and Table of Contents .......................... index.txt - -User's Guide - The ELinks Manual (txt) ............................ manual.txt - The ELinks Manual (html) .......................... manual.html - Other Topics - Frequently Asked Questions ................... faq.html - JavaScript/ECMAScript in ELinks ........ ecmascript.txt - -Man pages (*) - elinks(1) ................................... man/man1/elinks.1 - elinks.conf(5) ......................... man/man5/elinks.conf.5 - elinkskeys(5) ........................... man/man5/elinkskeys.5 - -Developer's Guide - Internal Scripting (**) - The Lua Scripting Book ................ elinks-lua.texi - On the Perl Scripting Interface ........ (***) perl.pod - Events Reference Sheet (****) .............. events.txt - The Demented Guide to Source Hacking (*****) ...... hacking.txt - The Smallest Binary Quest Spoilerbook ............... small.txt - A Discursus on Color Models ................... color-model.txt - -Appendices - Appendix A - Notes on User Feedback .............. feedback.txt - -(*) Man pages are best viewed with the man program. The easiest way to -do this is by telling the man program to look for man pages in the -doc/man directory by using the -M switch. If you are standing in the -top-level directory, you can do this by invoking the man program using: - - man -M doc/man elinks.conf - -(**) By internal scripting, we mean scripting of the browser internals -through embedded Lua, Guile or Perl scripts. ECMAScript scripts -embedded in documents have nothing to do with that. - -(***) This document is written in the Plain Old Documentation format, -traditional for any Perl-related documentation. You can either view -it directly by the 'perldoc' tool or convert it to a more reading- --friendly format by one of the numerous 'pod2' tools, most notably -'pod2text' and 'pod2html'. All those tools should be part of your -Perl distribution (some Linux distributions have a separate 'perldoc' -package). - -(****) De iure, this is not restricted to internal scripting and should -be of general interest. De facto, it is currently interesting almost -exclusively to hackers in the internal scripting area - and shall it -be very useful resource for internal scripting power users. - -(*****) While that file contains great deal about general source code -structure and especially guidelines regarding coding style, submitting -patches etc., thus every aspiring developer should take the pains -to read through it, do not forget to also look for README and similar -text files in the subdirectories containing the relevant sources for -detailed notes regarding given modules/subsystems. - - - - - -(Note: Sometimes, I broke the lines manually earlier than gqap would, -for greater aesthetical effect. --pasky) -vim: textwidth=72 diff --git a/doc/manual.txt b/doc/manual.txt index 8e523166..ed9a9716 100644 --- a/doc/manual.txt +++ b/doc/manual.txt @@ -1,14 +1,15 @@ The ELinks Manual ================= -:Revision: $Revision: 1.18 $ -:Date: $Date: 2005/05/18 18:55:14 $ Preface ------- Welcome! This is the entry point for the humble ELinks manual. It is by no means complete, it is not even very homogeneous and it should eventually be -superseded by a complete ELinks Book. +superseded by a complete ELinks Book. Until this happens you may also find it +necessary to refer to the manual page for a very quick reference, or the +built-in documentation available via the --long-help and --config-help ELinks +command-line arguments. The built-in documentation is sure to be up-to-date. There was a complete (or, for the most part complete) manual for Links 0.82 at one time, and you can still find it at: From 877c5fc1ba716708a2738d20238d473ac57a8138 Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 04:49:50 +0100 Subject: [PATCH 07/59] Center some dialog examples --- doc/bittorrent.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/bittorrent.txt b/doc/bittorrent.txt index 3702885d..f1ebb522 100644 --- a/doc/bittorrent.txt +++ b/doc/bittorrent.txt @@ -60,7 +60,7 @@ If you start downloading a torrent which was previously active, the client will first try to resume downloaded data from the disk. The resume progress is shown in the resume dialog, depicted below: - +----------------------------------------- Download -------------------------------------+ + +--------------------------------------- Download ---------------------------------------+ | | | bittorrent:http://www.legaltorrents.com/bit/blue-a-short-film.torrent | | | @@ -82,7 +82,7 @@ such as progress, and a summary of which places in the torrent pieces have been downloaded from. A view of the download dialog along with highlights of the most important parts of the dialog is given below: - +---------------------------------------------- Download --------------------------------+ + +--------------------------------------- Download ---------------------------------------+ | | | bittorrent:http://www.legaltorrents.com/bit/best-of-webbed-hand-vol-1.torrent | | | From 2ed9e26ebec3064b15d6bc334908d50688dfc9d9 Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 05:36:24 +0100 Subject: [PATCH 08/59] Fix to generate listings correctly for docbook backend --- doc/tools/make-elinkskeys-manpage | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/doc/tools/make-elinkskeys-manpage b/doc/tools/make-elinkskeys-manpage index ee9e04ae..7953fcaf 100755 --- a/doc/tools/make-elinkskeys-manpage +++ b/doc/tools/make-elinkskeys-manpage @@ -40,7 +40,9 @@ print_keymap_actions() [ "$action" = " *scripting-function*" ] && continue echo 'ifdef::backend-docbook[]' - echo "$action:: $caption." + echo "$action::" + echo " $caption." + echo echo 'endif::backend-docbook[]' echo 'ifdef::backend-xhtml11[]' printf "%-34s %s\n" "$action" "$caption" @@ -95,19 +97,10 @@ print_keymap_defaults() *) modifier="" ;; esac - case "$DOCTYPE" in - man) - echo - echo "'$modifier$key'::" - echo " $action" - ;; - html) - printf "%-11s %s\n" "$modifier$key" "$action" - ;; - esac - echo 'ifdef::backend-docbook[]' - echo "'$modifier$key':: $action" + echo "'$modifier$key'::" + echo " $action" + echo echo 'endif::backend-docbook[]' echo 'ifdef::backend-xhtml11[]' printf "%-11s %s\n" "$modifier$key" "$action" @@ -115,7 +108,6 @@ print_keymap_defaults() done echo 'ifdef::backend-xhtml11[]' - echo '--------------------------------------------------------------------------------------------' echo 'endif::backend-xhtml11[]' From 32bd0f6cd3d94b53339935527c62a16f45de9586 Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 05:44:16 +0100 Subject: [PATCH 09/59] A few fixes --- doc/installation.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/installation.txt b/doc/installation.txt index 35043ee7..87c96b28 100644 --- a/doc/installation.txt +++ b/doc/installation.txt @@ -19,7 +19,7 @@ required or recommended that you install. Requirements ~~~~~~~~~~~~ -To succesfully install ELinks all that is required is GNU make and a C +To successfully install ELinks all that is required is GNU make and a C compiler. If you want to install directly from GIT it is also required that automake and autoconf is installed on your system. @@ -48,7 +48,7 @@ xterm with 256 colors Program atleast patch level 179 or rxvt program \ from version 2.7.9 for support of 256 colors. \ Newer PuTTY also has 256 color support. libidn For internationalized domain names. -SpiderMonkey Mozilla's JavaScript engine for getting +SpiderMonkey Mozilla's JavaScript engine for getting \ JavaScript/ECMAScript support in ELinks. \ See also <>. ----------------------------------------------------------------------------- From 428783704a3690aa13f21643db336a5ba361d178 Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 07:32:25 +0100 Subject: [PATCH 10/59] Enhance docbook man:[] macro with stuff from git's gitlink:[] macro --- doc/asciidoc.conf | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/asciidoc.conf b/doc/asciidoc.conf index fa6870fe..7f49e940 100644 --- a/doc/asciidoc.conf +++ b/doc/asciidoc.conf @@ -25,7 +25,10 @@ ifdef::backend-docbook[] # No interlinking between elinks manpages [man-inlinemacro] -{target}({0}) +{0%{target}} +{0#} +{0#{target}{0}} +{0#} # For manpages use less verbose linking ifdef::doctype-manpage[] From aa7d65fb7991f21269320cf334b1f2a705056d2f Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Thu, 12 Jan 2006 08:33:50 +0100 Subject: [PATCH 11/59] Make elinks.conf(5) also be build from .txt files This simplifies help2doc since it now just have to do one single thing with output of either --config-help or --long-help. The new manpage is not as fancy wrt. indentation and sub titles but it is more uniform and we get a HTML version. Generate options-{config,command}.txt with help2doc. Only conditionally check for API header files, to speed up execusion. --- doc/Makefile | 17 +-- doc/elinks.1.txt | 4 +- doc/elinks.conf.5.txt | 62 +++++++++++ doc/elinkskeys.5.txt | 2 +- doc/tools/help2doc | 248 +++++------------------------------------- 5 files changed, 100 insertions(+), 233 deletions(-) create mode 100644 doc/elinks.conf.5.txt diff --git a/doc/Makefile b/doc/Makefile index 3e8fa66e..5efcab11 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -50,8 +50,9 @@ TXT_DOCS = \ urlshortcuts.txt GEN_TXT_DOCS = \ - command-options.txt \ import-features.conf.txt \ + option-command.txt \ + option-config.txt \ keymap-defaults.txt \ keymap-actions.txt @@ -59,6 +60,7 @@ TXT_DOCS += $(GEN_TXT_DOCS) HTML_DOCS-$(CONFIG_ASCIIDOC) += \ elinks.1.html \ + elinks.conf.5.html \ elinkskeys.5.html \ hacking.html \ manual.html @@ -72,18 +74,20 @@ HTML_DOCS-$(CONFIG_POD2HTML) += \ MAN_DOCS-$(CONFIG_XMLTO) += \ elinks.1 \ + elinks.conf.5 \ elinkskeys.5 + # Only jw is used for generating PDF. PDF_DOCS-$(CONFIG_JW) += \ manual.pdf -MAN_DOCS += elinks.conf.5 - ## API Docs # +ifneq ($(findstring api,$(MAKECMDGOALS)),) API = $(shell find $(top_srcdir)/src/ -name '*.h' -exec grep -q 'API Doc' \{\} \; -printf "%p " | sort) +endif define api_doc api/$(2).txt: $(1) @@ -137,11 +141,8 @@ import-features.conf.txt: $(FEATURES) $(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) > $@ +option-%.txt: $(ELINKS) $(HELP2DOC) + $(LOCALES) $(HELP2DOC) $(ELINKS) $@ > $@ ## Default build rules # diff --git a/doc/elinks.1.txt b/doc/elinks.1.txt index 804e1db0..1355667c 100644 --- a/doc/elinks.1.txt +++ b/doc/elinks.1.txt @@ -32,7 +32,7 @@ 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[] +include::option-command.txt[] ENVIRONMENT VARIABLES --------------------- @@ -150,7 +150,7 @@ 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) +man:elinkskeys[5], man:elinks.conf[5], links(1), lynx(1), w3m(1), wget(1) //////////////////////////////////////////////////////////////////////////// # vim: tabstop=4 shiftwidth=4 textwidth=76 diff --git a/doc/elinks.conf.5.txt b/doc/elinks.conf.5.txt new file mode 100644 index 00000000..8e342a3d --- /dev/null +++ b/doc/elinks.conf.5.txt @@ -0,0 +1,62 @@ +elinks.conf(5) +============== + +NAME +---- +elinks.conf - ELinks configuration file + +SYNOPSIS +-------- +[verse] +set "