1
0
mirror of https://github.com/rkd77/elinks.git synced 2024-12-04 14:46:47 -05:00

Merge with /srv/git/elinks.git

This commit is contained in:
Petr Baudis 2005-09-17 08:46:26 +02:00
commit 9e1472a72a
9 changed files with 134 additions and 117 deletions

11
COPYING
View File

@ -1,6 +1,15 @@
Note that the only valid version of the GPL as far as ELinks is
concerned is _this_ particular version of the license (ie v2, not v2.2
or v3.x or whatever), unless explicitly otherwise stated.
or v3.x or whatever), unless explicitly stated otherwise. That is at
least the policy for all pasky's contributions and the default - if you
want different policy for your patches, the best way to state it is by
a patch for your AUTHORS entry.
If pasky likes GPLv3, he might relicence his contributions for GPLv3
as well. The default policy should probably be that you trust pasky,
Jonas, or the current maintainer of the day to do the right thing (much
like it is in the Linux kernel). But this needs to be yet worked out
and agreed upon.
-----------------------------------------------------------------------

109
INSTALL
View File

@ -6,8 +6,8 @@ Elinks installation guidelines
./configure && make && make install
Check out the bottom of this file if you're upgrading from Links or an older
ELinks! And be sure to look at doc/ecmascript.txt if you want ECMAScript
(that's JavaScript) support.
ELinks! And be sure to look at doc/ecmascript.txt if you want (experimental)
ECMAScript (that's JavaScript) support.
##########
@ -40,51 +40,17 @@ snapshot - you don't need to do this there.
##########
If you want to compile elinks, first check the directory named contrib/, it
If you want to compile ELinks, first check the directory named contrib/, it
may contain patches that are of use to you. If you're interested in any of
them, try to apply them by doing (for each one):
$ patch -p0 < contrib/that-patch
They may not apply - I don't update patches in contrib/ regularly - if you
want, feel free to go ahead and update the patch for the current tree and send
me the newer version.
They may not apply, since I don't update patches in contrib/ regularly - if
you want, feel free to go ahead and update the patch for the current tree and
submit the newer version.
Usually, even after strip, the ELinks binary can grow a lot these days; I plan
on spawning various external files optionally, containing boring stuff like
various translations etc; later, even DSO modules may come, etc. But even
nowadays, you can reduce the resulting binary size by throwing out stuff you
don't like. First, if you want better performance and a smaller binary, don't
compile it with debug. It won't hurt if you do, though, and ELinks will tell
you about any memory leaks, incorrect memory manipulation etc, which may be
helpful to us if you report it. Next, disable any optional features you are not
going to use, they can make the resulting binary smaller (although it'll probably
have no non-marginal performance impact) - especially go through the
features.conf file in the project root directory. Also, you may try to override
the build system to build a dynamically linked binary, which can be a lot
smaller as well. Lastly, you can go to the Unicode/ and intl/ directories, then
edit index.txt and remove any codepages or translations you don't like;
especially for translations, it can significantly reduce the resulting binary
size as well.
!BEWARE! If you _distribute_ a binary of ELinks with OpenSSL linked to it,
and the OpenSSL library is not part of your base system, you are VIOLATING THE
GPL (although I believe that for this absurd case no ELinks copyright holder
will sue you, and it's not a problem for the OpenSSL people as well, as they
have explicitly told me). So, people who are making ELinks binaries for systems
with no OpenSSL in the base system and who decided to link OpenSSL against the
ELinks binary may wish NOT to publish or distribute such a binary, as it's
breaking GPL 2(b), if they like to have everything legally perfect (like Debian
people ;). As a semi-solution to this for those people, GNUTLS support was
introduced; if you want to distribute ELinks binaries with HTTPS support,
compile ELinks with the --with-gnutls configure option (assuming that you have
GNUTLS 0.5.0 or later [tested with 0.5.4] installed). However, as GNUTLS is not
yet 100% stable and its support in ELinks is not so well tested yet, it's
recommended for users to give a strong preference to OpenSSL whenever possible.
Good luck!
The basic compilation looks like:
The compilation itself looks like:
Unix - just doing:
@ -93,15 +59,15 @@ recommended for users to give a strong preference to OpenSSL whenever possible.
should be enough. However, in some FreeBSD 3 distributions you have to
set CFLAGS=-aout before running ./configure. Also, you may want to
adjust some compile-time options through ./configure - do
./configure --help and it'll print out a list of them. You can more
finely control what's going to be included in the binary in the
features.conf file, and some really detailed tuning can be performed in
the src/setup.h.
adjust some (well, plenty of) compile-time options through ./configure
- do ./configure --help and it'll print out a list of them. You can
finetune what's going to be included in the binary in the features.conf
file, and some really detailed tuning can be performed in src/setup.h.
Also, a nice idea is to compile ELinks outside of the source tree.
Make another directory and run path_to_source_tree/configure from it.
Typically, it looks like:
Also, a nice idea is to compile ELinks outside of the source tree (note
that this might not quite work right now, but we're working on fixing
it). Make another directory and run path_to_source_tree/configure from
it. Typically, it looks like:
$ mkdir ../elinks-build
$ cd ../elinks-build
@ -123,7 +89,13 @@ recommended for users to give a strong preference to OpenSSL whenever possible.
SET MAKE=d:/prg/emx/bin/make.exe
SET EMXOPT=-h100
Dos, Windows - port it by yourself.
DOS, Windows - port it by yourself.
Usually, even after strip, the ELinks binary can measure a lot, but you can
radically reduce the resulting binary size by throwing out stuff you don't like.
Detailed discussion of reducing the executable size can be found in
doc/small.txt
##########
@ -141,10 +113,35 @@ recommended for users to give a strong preference to OpenSSL whenever possible.
before you run links.
Now, check the contrib/ directory again. There may be some useful config
file examples there, along with a few support tools and some Lua scripts - you
probably want them ;) so just copy the hooks.lua to ~/.elinks, and edit the
file examples there, along with few support tools and some Lua scripts - you
probably want them ;) so just copy hooks.lua to ~/.elinks, and edit the
configuration part - it adds various functionality to ELinks, like
decompression of gzipped files or user-defined protocols.
decompression of gzipped files or HTML code rewriting for ELinks-unfriendly
websites.
!BEWARE! If you _distribute_ an ELinks executable linked with OpenSSL and
the OpenSSL library is not part of your base system, you are VIOLATING THE GPL.
I honestly believe that for this absurd case no ELinks copyright holder will
sue you, and it's not a problem for the OpenSSL people as well, as they have
explicitly told me, but you might stay on the safe side.
So, people who are making ELinks binaries for systems with no OpenSSL in the
base system and who decided to link OpenSSL against the ELinks binary may wish
NOT to publish or distribute such an executable, as it's breaking GPL 2(b), if
they like to have everything legally perfect (like the Debian people ;-).
As a semi-solution to this problem, GNUTLS support was introduced; if you want
to distribute ELinks executables with HTTPS support, compile ELinks with the
--with-gnutls configure option (assuming that you have GNUTLS 1.2.0 installed;
we can't say about later versions since GNUTLS people seem to have strange taste
wrt. backwards compatibility).
HOWEVER, beware that GNUTLS support in ELinks is not so well tested as
OpenSSL, and shall be probably still considered experimental. Therfore, it's
recommended to the users to give OpenSSL strong preference whenever possible.
(Just to show the GNU ideologists how silly can they sometimes be, if not
anything else. ;-)
##########
@ -156,11 +153,11 @@ the old (E)Links, so you probably want to make a links symlink pointing to
elinks.
Then, note that configuration files were moved from /etc to /etc/elinks and
from ~/.links to ~/.elinks, because the name and format of parts of them were
from ~/.links to ~/.elinks, because the name and format of some of them was
changed:
links.cfg became elinks.conf and you need to convert it with
contrib/conv/conf-links2elinks.pl; html.cfg was merged into elinks.conf
contrib/conv/conf-links2elinks.pl; html.cfg was merged into elinks.conf.
bookmarks are still bookmarks, but you need to convert it with
old_to_new_bookmarks.sh.
@ -169,7 +166,7 @@ old_to_new_bookmarks.sh.
history became globhist and the format is the same.
cookies are still cookies, but you need to convert it with tr " " "\t"
cookies are still cookies, but you need to convert it with tr " " "\t".
##########

11
NEWS
View File

@ -1,14 +1,15 @@
See ChangeLog for recent changes, bugfixes and new features.
You can see the complete list of recent changes, bugfixes and new features
in the gitweb interface. See the ChangeLog file for details.
ELinks now:
* support for Lua 4.x was dropped, we only support Lua 5.x now.
* support for Lua 4.x was dropped, we only support Lua 5.x now
* Python scripting back-end (experimental)
* 88 colors support
* external editor is configurable at run-time
* Default URI-rewrite rule, used when no other rules match but the string
* default URI-rewrite rule, used when no other rules match but the string
that was entered in the Go to URL box does not resemble a URI
* Support prefixes for add-bookmark-link, document-info, goto-url-current-link,
* support prefixes for add-bookmark-link, document-info, goto-url-current-link,
history-move-back, and history-move-forward
* BitTorrent protocol (experimental)
* FSP protocol via a CGI script (see contrib/cgi/README.FSP) (experimental)
@ -17,7 +18,7 @@ ELinks now:
ELinks 0.10.4:
* explicit keyboard accelerators were defined for buttons in dialogue boxes
and are now highlighted.
and are now highlighted
ELinks 0.10.2:

58
README
View File

@ -6,10 +6,13 @@ ELinks is an advanced and well-established feature-rich text mode web
customizable and can be extended via scripts. It is very portable and runs
on a variety of platforms.
The ELinks official website is available at http://elinks.or.cz/.
Please see the SITES file for mirrors or other recommended sites.
If you want to install ELinks on your computer, see the
INSTALL file for further instructions.
The ELinks official website is available at
http://elinks.or.cz/
Please see the SITES file for mirrors or other recommended sites. If you
want to install ELinks on your computer, see the INSTALL file for further
instructions.
A good start point is documentation files available in doc/, especially the
file named index.txt.
@ -24,35 +27,40 @@ document.
If you want to add a new language or update the translation for an existing
one, please read po/README document.
If you want to write some documentation, well you're welcomed ;)
If you want to write some documentation, well, you're welcome! ;)
History
~~~~~~~
Historical notes
~~~~~~~~~~~~~~~~
Initially, ELinks was a development version of Links (Lynx-like text WWW browser),
with more liberal features policy and development style.
Its purpose was to provide an alternative to Links, and to test and tune various
new features, but still provide good rock-solid releases inside stable branches.
If you are more interested, you can examine the Links website at
http://links.sf.net/.
Initially, ELinks was a development version of Links (Lynx-like text WWW
browser), with more liberal features policy and development style. Its purpose
was to provide an alternative to Links, and to test and tune various new
features, but still provide good rock-solid releases inside stable branches.
Why not contribute to Links instead? Well, first I made a bunch of patches for
the original Links, but a significant number of them got refused because
Mikulas did not like them, as he just wouldn't have any use for them himself.
He wants to keep Links with a relatively closed feature set and merge only new
features which he himself needs. It has advantages that the tree is very narrow
and the code is small and contains very little bloat. ELinks, on the contrary,
aims to provide a full-featured web browser, superior to both lynx and w3m and
with the possibilities of Konqueror and similar browsers. However, to prevent
drastic bloating of the code, the development is driven in the course of
modularization and separation of add-on modules (like cookies, bookmarks, ssl,
lua etc).
the original Links, but Mikulas wasn't around to integrate them, so I started
releasing my fork. When he came back, a significant number of them got refused
because Mikulas did not like them, as he just wouldn't have any use for them
himself. He wants to keep Links with a relatively closed feature set and merge
only new features which he himself needs. It has advantages that the tree is
very narrow and the code is small and contains very little bloat.
For more about ELinks history, see http://elinks.or.cz/history.html
ELinks, on the contrary, aims to provide a full-featured web browser, superior
to both lynx and w3m and with the power (but not slowness and memory usage) of
Mozilla, Konqueror and similar browsers. However, to prevent drastic bloating
of the code, the development is driven in the course of modularization and
separation of add-on modules (like cookies, bookmarks, ssl, scripting etc).
For more details about ELinks history, please see
http://elinks.or.cz/history.html
If you are more interested in the history and various Links clones and versions,
you can examine the website at
http://links.sf.net/

6
SITES
View File

@ -1,5 +1,5 @@
Homepage:
http://elinks.or.cz/
http://elinks.cz/
DEBs:
http://packages.debian.org/testing/web/elinks.html
@ -18,11 +18,11 @@ RISC OS binaries:
GIT root:
http://elinks.or.cz/elinks.git
http://elinks.cz/elinks.git
git+ssh://pasky.or.cz/srv/git/elinks.git (only for developers)
Mailing list:
http://elinks.or.cz/community.html#mailinglist
http://elinks.cz/community.html#mailinglist
elinks-users@linuxfromscratch.org (user discussion, announcements)
elinks-dev@linuxfromscratch.org (weird development and sorcery talks)
listar@linuxfromscratch.org (Subject: subscribe elinks-users)

4
TODO
View File

@ -7,7 +7,7 @@ What yet needs to take its way to Bugzilla:
Some rules for sane handling of texinfo documentation
Rewrite HTML parser (see ELusive, src/elusive/TODO)
Rewrite HTML parser (see the SGML+DOM stuff, src/document/sgml)
Reorganization of user interface (nothing particular at all, just an
uncertain feel that it could be better and bear a look of some UI designer ;)
@ -15,7 +15,7 @@ uncertain feel that it could be better and bear a look of some UI designer ;)
General goals:
Write some more documentation.. docs, a lot of docs! (see doc/book/TODO)
Write some more documentation.. docs, a lot of docs!
General code cleanup

View File

@ -791,9 +791,9 @@ disable_openssl=""
disable_gnutls=""
enable_gnutls=""
AC_ARG_WITH(gnutls, [ --without-gnutls disable GNUTLS SSL support],
AC_ARG_WITH(gnutls, [ --without-gnutls disable GNUTLS (1.2+) SSL support],
[if test "$with_gnutls" = no; then disable_gnutls=yes; fi])
AC_ARG_WITH(gnutls, [ --with-gnutls[=DIR] enable GNUTLS SSL support],
AC_ARG_WITH(gnutls, [ --with-gnutls[=DIR] enable GNUTLS (1.2+) SSL support],
[if test "$with_gnutls" != no; then enable_gnutls=yes; fi])
gnutls_withval="$withval"

View File

@ -1,8 +1,8 @@
To use this cgi script:
To use this CGI script you need to build fspcgi and copy the executable
to your cgi directory. In ELinks, you can then use this URL:
Build fspcgi, copy executable to your cgi directory.
Usage:
file:///"path_to_fspcgi"?host:port/path_to_file_or_directory
file:///"path_to_fspcgi"?host:port/path_to_file_or_directory
You can find more info about the FSP protocol at
More info about FSP protocol you find on http://fsp.sourceforge.net/.
http://fsp.sourceforge.net/

View File

@ -1,23 +1,24 @@
Overview of the ELinks documentation
There is only limited documentation available for ELinks, sorry. It basically
consists of the documents in this directory and the features.conf, README and
INSTALL files in the project's root directory.
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 the man pages living in the man/
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?). The index.txt file
contains the table of contents listing all these files.
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.
Tools
-----
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.
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.
All these tools are checked by configure so that to successfully build all
possible documentation (with the tools available on the system) run
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
@ -26,16 +27,17 @@ in the doc/ directory.
Contributing
------------
Contributions are very warmly welcomed. Wether it be fixing of typos or bad
grammar, rewritings or new material. All info relevant to ELinks usage can be
included in the manual. Including FAQ material, tips and cheats ;)
Contributions are very warmly welcomed, whether it is fixing typos or bad
grammar, rewritings or new material. Any information relevant to ELinks usage
can be included in the manual, including FAQ material, tips and cheats ;)
There is no strict codingstyle. But please don't limit your use of whitespace
There is no strict codingstyle, but please don't limit your use of whitespaces
and take a look at the style used in the current documents to get ideas of what
is reasonable.
Contributions should be sent to Jonas Fonseca <fonseca@diku.dk>. If your changing
something in an existing document please read about how to make unified patches
in the Patches section of the doc/hacking.txt file.
Contributions should be sent to Jonas Fonseca <fonseca@diku.dk> or to the
ELinks mailing list. If you are changing something in an existing document,
please read about how to make unified patches in the Patches section of the
doc/hacking.txt file.
$Id: README,v 1.14 2005/05/24 19:05:14 jonas Exp $