On-screen reading made easy
About
Dictator is a program for on-screen reading of text files, developed with the intention of making it easier to read some of the fine electronic texts available on the net, such as those produced by The Gutenberg Project.
The problem with these texts is that reading them on-screen the conventional way is a drag and printing them out is time-consuming, costly, and wasteful. Dictator provides an alternative approach called Rapid Serial Visual Presentation (RSVP) in which words are displayed consecutively in the same place at a user-controllable rate. This method prevents unconscious re-reading of adjacent text and decreases the tendency of the reader to oralise the text, allowing for increased reading speeds. RSVP also permits the use of larger fonts for text display which improves text clarity. While it does take some getting used to, with a little practise you may find that reading with Dictator becomes faster and easier than reading from a book.
Status
This project is currently inactive. If I ever get time I want to reimplement it inside of a web browser and hook it up to a library of free texts.
Screenshot
Features
- Rapid Serial Visual Presentation (RSVP) text file reading.
- Single word and multiword displays.
- Unicode support (with Unicode versions of wxPython only).
- Variable reading rate.
- Easy keyboard controls.
- Bookmark manager with automatic recall of last position in text.
- Dynamic text flow (rate related to word length, punctuation).
- Paragraph cues.
- Adjustable fonts and colours.
- Fullscreen mode.
- Text search.
- Customisable text filters allow scraping from PDF/html/Microsoft Word Documents.
- Customisable web queries on current word (e.g. look up definition).
- Open from clipboard.
- Open URL (via text filter only).
Download and Installation
Dictator is free software, released under the GNU General Public License.
Microsoft Windows
The simplest way of installing Dictator for Windows is to download and run the following installer, built using py2exe and Inno Setup.
Download Windows installer (~3Mb)
If, however, you already have Python and wxPython installed on your system you may prefer to run Dictator directly from the source files, as described in the section below.
Gentoo Linux
Download the latest ebuild for Gentoo from bugs.gentoo.org and put it in the portage overlay directory {portage overlay root}/app-text/dictator/. The portage overlay root directory is defined in /etc/make.conf with a line like 'PORTDIR_OVERLAY=/usr/local/portage'. From the dictator ebuild directory run 'ebuild dictator-0.9.7.ebuild digest' to make the digest files. Dictator can then be emerged like any other program with 'emerge -uDav dictator'.
Running Dictator from the python source files
If you want to run Dictator on other systems you'll need the following installed on your system:
- Python (version >= 2.2)
- GTK+ (version >= 2.4)
- wxPython (tested with 2.4-2.6 branches, but it is strongly advised that you use the most recent stable version of wxPython)
You can download the source release from the sourceforge project page (~50Kb). After expanding the source, run dictator from the source directory with the command:
$ python ./dictator_start.py <options> <textfile>
On Unix systems the binary configuration file 'dictator.conf' will be stored in the directory $HOME/.dictator/. On Windows systems the configuration will be stored in the program directory.
CVS Python source code access
The latest version of the Dictator Python source code is available from SourceForge CVS. If you have cvs installed on your system then to check out the source tree to the current directory you do something like:
$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/dictator login $ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/dictator co -P latest
Bugs
Known issues:
- Splitter window sash can get stuck with wxPython 2.4 (too bad).
- wxFontDialog crashes in fullscreen mode in wxPython 2.4 - disabled.
- Handling of big files (>1Mb) is slow.
- Last I heard, it doesn't work with OSX - there are still compatibility issues with the OSX version of wxPython, and I have no machine to test it on.
Feedback
Feedback and queries to dictator AT kieranholland DOT com (but read the status report if you are about to suggest anything that involves work - use the source ;)
Frequently Asked Questions
- Why are non-ascii characters not displayed properly?
- Can I preserve character encoding with my "url-open" filter "lynx -dump %s"?
- Why is there no sound coming out of my speakers?
Do you have the Unicode version of wxPython installed? Go to the meny Help > About to find out if Unicode is supported by your version of wxPython. If not upgrade to a Unicode version of wxPython.
Possibly - run lynx and set your preferred character encoding scheme in the options. From then on lynx should dump in that format.
Oh dear, I had a feeling the name would haunt me, I just didn't know why.
Links
- The Gutenberg Project
The oldest producer of free electronic texts, now housing more than 15,000 works. - The Online Books Page
A large reservoir of links to free electronic texts. - RSVP Software Comparison
A wiki comparing both free and commercial RSVP software.