linux.techass.com
"Tell Bill where to go today!"

Home/What's New
Products
Projects

Technology Associates Homepage


eternaLight!
Alien Technology?





Powered by Linux!
(of course)

EText Reader
[ Features | Documentation | Downloads | Screenshots | Bugs | License | Credits | Contact | How can I help ]

What is it?

EText Reader is a simple cross-platform GUI EText reader utilizing the wxWindows GUI library.

It was written to "scratch an itch" of mine, i.e. to be able read EText's using the font and color selection I like and to keep track of the current reading position within the text and allow making bookmarks to be able to reference specific portions of the text later.

I was watching the Discovery channel recently when they had a program on 'Heart of Darkness', a novel written in the late 1800's. This is the basis of the movie 'Apocalpyse Now' and the TNT movie 'Heart of Darkness'. Assuming the copyright had lapsed, I went to the Project Gutenberg website to see if I couldn't download an EText of the book. Sure enough, it was there and hence I had to write a program to view it.

Note: this is also a nice, simple example that demonstrates several features of the wxWindows library. It is incredible to note how you can go from concept to a complete working program in only a few hours using this library.

Note 2: Okay, this used to be a nice, simple example for the wxWindows library but it has gotten a bit more complicated since then. Its still nice, but not so simple example using the wxWindows library.


What are EText's?

If you are not familiar with EText's, they are electronic versions of books stored in ordinary text files. They are being created by Project Gutenberg. They are painstakingly entered by hand by volunteers. They have many thousands of texts whose copyrights have lapsed available for your reading pleasure.


Where to get EText's

Besides Project Gutenberg you should try the following:
Project Gutenberg EText Library
This is our own compilation of the etexts from the Project Gutenberg site placed on CD with ETR and nice auto install for both Windows and Linux. Only $20.00 (20% of the profit goes to Project Gutenberg). New June 2002 edition available!

etext.techass.com
This is an experimental online etext site.

The Online Books Page
John Mark Ockerbloom's fantastic site at the University of Pennsylvania. Tons of stuff including banned books.

Baen's WebScription Service
This is a commercial site, but a great deal for Sci Fi readers.

Baen Library
Free books from Baen authors (free, as in, absolutely free!). This is something of an experiment/"put your money where your mouth is" type deal. I'm not going to try to explain it here, just go the site and read their explanation and the fantastic works they are making available.

The Etext Archives
"Home to electronic texts of all kinds, from the sacred to the profane, from the political to the personal." There's all kinds of stuff here including many of the old etexts that used to float around the Internet in the days before web browsers. Note: many of these files are not text files and will require another viewer (mostly a web browser).

Let me know if you find other sites I should list here. I'm not really that partial to Baen, but they do seem to be a publisher that "gets" electronic publishing and deserve a look.


Features

  • Displays etext's stored in text files, ZIP and GZIP archives.

  • Allows selection of font, foreground color, background color, and line spacing.

  • Remembers last reading position for each file viewed and moves to remembered position when file is reopened.

  • Allows setting of multiple named bookmarks.

  • Allows browsing and download of etext's from Project Gutenberg sites.

  • Allows dictionary lookup of words (by double-clicking words or lookup from the Help menu) from online dictionaries.

  • Supports native look-and-feel on supported platforms.

  • Allows "cutting" text from documents.

  • Completely free with source code!


Documentation

None yet (sorry :)). However, the program should be quite self-explanitory and help is included with the program.


Screenshots

These are screenshots from the Linux version (Windows version is similar)

Viewing "Heart of Darkness"

Click for larger image

Browsing Project Gutenberg Texts

Click for larger image

Looking up word in online dictionary

Click for larger image


Downloads

In keeping with the "open source" ideal (release early and often) I am making the source code available now, even though it isn't finished.

  • Current CVS Snapshot (source code)

    etr-snapshot.tgz
    Daily snapshot from CVS. This is generated automatically on daily basis from the source in CVS. Not guaranteed to compile or work or anything, but it is current!

  • Version 1.2.2 Latest Release! (May 31, 2002)

    Fixed horizontal scrolling problem and corrected font problem on Linux.

    etr-1.2.2.tar.gz (~139K)
    etr-1.2.2-1.src.rpm(~140K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows (get the source for wxWindows as required to compile etr here ~13MB). Note: because etr uses features in the development version of wxWindows and being in development it is not stable. Therefore, I have made a snapshot of wxWindows which works correctly with etr. You are on your own if you choose to use other versions of wxWindows.

    etr-1.2.2-1.i386.rpm (~1237K)
    etr-1.2.2-bin.tar.gz (~1237K)
    i386 Linux binary. This is statically linked to wxWindows (the rest is dynamic) on RedHat Linux 6.2 with gtk-1.2.8 (it will probably work with other 1.2.x versions of gtk, but maybe not). It has been tested on RedHat 6.2 and 7.2. Download it, install it, and let me know how it goes. I am especially interested in making this work correctly. The program is called 'etr' and is installed in /usr/bin. If you are running Gnome or KDE it should appear on your Applications menu. If you download the bin-tar file rather than the rpm, untar/unzip from / with a command like 'tar xvzf etr-1.2.2-bin.tar.gz'. Note: If you are upgrading from 1.2.0 you should rename the etr configuration file in your home directory from "EText Reader" to ".EText Reader" to maintain your settings.

    etr-1.2.2-1.exe(~1256K)
    Windows version in a self extracting/installing exe. Just download and run it to install. Note: if you are running Windows 95 or NT and haven't upgraded to Internet Explorer 5.x, you will want to upgrade your comctl32.dll with 50comupd.exe (this is the official update from M$).

  • Version 1.2.1 (April 5, 2002)

    Fixed problem with windows disappearing if closed while minimized.

    etr-1.2.1.tar.gz (~139K)
    etr-1.2.1-2.src.rpm(~140K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows (get the source for wxWindows as required to compile etr here ~13MB). Note: because etr uses features in the development version of wxWindows and being in development it is not stable. Therefore, I have made a snapshot of wxWindows which works correctly with etr. You are on your own if you choose to use other versions of wxWindows.

    etr-1.2.1-2.i386.rpm (~1237K)
    etr-1.2.1-bin.tar.gz (~1237K)
    i386 Linux binary. This is statically linked to wxWindows (the rest is dynamic) on RedHat Linux 6.2 with gtk-1.2.8 (it will probably work with other 1.2.x versions of gtk, but maybe not). It has been tested on RedHat 6.2 and 7.2. Download it, install it, and let me know how it goes. I am especially interested in making this work correctly. The program is called 'etr' and is installed in /usr/bin. If you are running Gnome or KDE it should appear on your Applications menu. If you download the bin-tar file rather than the rpm, untar/unzip from / with a command like 'tar xvzf etr-1.2.1-bin.tar.gz'. Note: If you are upgrading from 1.2.0 you should rename the etr configuration file in your home directory from "EText Reader" to ".EText Reader" to maintain your settings.

    etr-1.2.1-1.exe(~1256K)
    Windows version in a self extracting/installing exe. Just download and run it to install. Note: if you are running Windows 95 or NT and haven't upgraded to Internet Explorer 5.x, you will want to upgrade your comctl32.dll with 50comupd.exe (this is the official update from M$).

  • Version 1.2.0 (May 15, 2001)

    Several bug fixes, code cleanups, help, and added browsing CDROM indexes.

    etr-1.2.0.tar.gz (~132K)
    etr-1.2.0-3.src.rpm(~133K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows from current CVS (i.e. 2.3.x, and requires a platform on which this compiles) and GTK+ 1.2.8, it may work with other versions of GTK+, but it is not tested.

    etr-1.2.0-3.i386.rpm (~1231K)
    etr-1.2.0-bin.tar.gz (~1230K)
    i386 Linux binary. This is statically linked to wxWindows (the rest is dynamic) on RedHat Linux 6.2 with gtk-1.2.8 (it will probably work with other 1.2.x versions of gtk, but maybe not). It has been tested on RedHat 6.2 and 7.1. Download it, install it, and let me know how it goes. I am especially interested in making this work correctly. The program is called 'etr' and is installed in /usr/bin. If you are running Gnome or KDE it should appear on your Applications menu.

    etr-1.2.0-2.exe(~1243K)
    Windows version in a self extracting/installing exe. Just download and run it to install. Note: if you are running Windows 95 or NT and haven't upgraded to Internet Explorer 5.x, you will want to upgrade your comctl32.dll with 50comupd.exe (this is the official update from M$).

  • Version 1.1.0 (April 16, 2001)

    Several bug fixes and adds gzip support and online dictionary word lookup (either double-click on a word while viewing or use the "Lookup word" option from the Help menu).

    etr-1.1.0.tar.gz (~119K)
    etr-1.1.0-1.src.rpm(~120K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows from current CVS (i.e. 2.3.x, and requires a platform on which this compiles).

    etr-1.1.0-1.i386.rpm (~1108K)
    i386 Linux binary. This is statically linked to wxWindows (the rest is dynamic) on RedHat Linux 6.2 with gtk-1.2.8 (it will probably work with other 1.2.x versions of gtk, but maybe not). It has been tested on RedHat 6.2 and Mandrake 7.1. Download it, install it, and let me know how it goes. I am especially interested in making this work correctly. The program is called 'etr' and is installed in /usr/bin. If you are running Gnome or KDE it should appear on your Applications menu.

    etr-1.1.0-1.exe(~1168K)
    Windows version in a self extracting/installing exe. Just download and run it to install.

  • Version 1.0.0 (March 22, 2001)

    This version is the first release with the new doc/view architecture (actually, the first "real" release ever) and adds support for downloading files directly from the Project Gutenberg site, handling of zip files, word wrap, scrolling with the mouse, and cutting text from documents.

    etr-1.0.0.tar.gz (~140K)
    etr-1.0.0-1.src.rpm(~141K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows >2.2.6 (and requires a platform on which this compiles).

    etr-1.0.0-1.i386.rpm (~1077K)
    i386 Linux binary. This is statically linked to wxWindows (the rest is dynamic) on RedHat Linux 6.2 with gtk-1.2.8 (it will probably work with other 1.2.x versions of gtk, but maybe not). It has been tested on RedHat 6.2 and Mandrake 7.1. Download it, install it, and let me know how it goes. I am especially interested in making this work correctly.

    etr-1.0.2-1.exe(~1033K)(Updated 04/12/01)
    Windows version in a self extracting/installing exe. Just download and run it to install. Note: this has been updated so it works correctly on 95 and NT4, sorry about that.

  • Version 0.0.3 (July 5, 2000)

    This version doesn't add any new functionality, but adds "configure" script support for *nix platforms (which I hope will ease compiliation issues). Windows users can still use the 0.0.2 binary.

    etr-0.0.3.tgz (~82K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows 2.1.16 or later (and requires a platform on which this compiles).

    etr-linux-bin-0.0.3.gz (~775K)
    i386 Linux binary. This is statically linked to wxWindows (the rest is dynamic) on RedHat Linux 6.2 with gtk-1.2.8 (it will probably work with other 1.2.x versions of gtk, but maybe not). Uncompress it and copy it to a directory in your path. It has been compressed with UPX (program compressor) to ~38% of its original size.

  • Version 0.0.2 (June 22, 2000)

    This version includes fixes to compile and work under Windows, Borland C++ 5.0 project files, and Drag-n-drop support (provided by Larry Geralds).

    etr-0.0.2.tgz (~58K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows 2.1.16 or later.

    winetr-0.0.2.zip (~472K)
    Precompiled Win32 executable. This is all you need to run it under Windows 95/98/NT/2000 (theoretically).

  • Version 0.0.1 (June 21, 2000)

    etr-0.0.1.tgz (~7K)
    Source code. This is quite generic and should compile on any *nix OS as well as Windows. It requires wxWindows 2.1.16 or later.


Known Bugs and ToDo's

  • The clipboard "copy" function (available from the Edit menu) is not yet implemented. (done 1.0.0)
  • The "page down" key doesn't move quite far enough for my tastes.
  • Need to make Windows and Linux binaries available. RPM's and Debian packages would be nice as well (done 1.0.0).
  • Support screen rotation for reading in "landscape" or "portrait" mode (especially on laptops).
  • Wordwrap support for text files where paragraphs are a single line (done 1.0.0).
  • Internationalization (i.e. support for mulitple languages).
  • Can't view RTF (rich text format) files.
  • Can't view PostScript files.
  • Can't view PDF files.
  • Can't view HTML files.
  • Add scrolling using only the mouse buttons (so you don't have to touch the keyboard). (done 1.0.0)
  • Add support for bzip'd files.
  • Add adjustable left margin.

I have received a number of requests for new features (all listed above, I hope). If I have missed listing your feature/bug fix please email me again (I'm sorry :), thanks.

If you notice something not listed here please email me (see below). Don't assume someone else has informed me of a problem or that some feature is obvious, the worst that will happen is that I will say "Thank you very much for your help!".


License

All code is released under the GNU GPL license. Please do with it what you will, subject to this license.


Credits


Contact

Please email any questions, comments, bug fixes, patches, etc. to Derry Bryson at derry@techass.com


How can you help?

The best way to help with this project is to contribute by either providing program patches or by providing feedback that helps further the development of the project. Any feedback at all is very helpful (even just "I donwloaded it, installed it, and it worked!" is very useful).

If you would like to provide monetary support, please make a purchase at our sponsor Technology Associates, Inc. They not only provide the bandwidth and space for this website, but pay my salary to work on this software, not to mention that they manufacture some really cool flashlights!

We have just released the "Project Gutenberg EText Library" June 2002 Edition which contains ETR (EText Reader) and the etexts from Project Gutenberg on 4 CD's. Only $20.00 with 20% of the profit going to Project Gutenberg. Nice way to get EText Reader and a bunch of stuff to read at the same time!


Copyright © 2000-2002 Derry Bryson. All Rights Reserved.