Zepo - Off-line browser

Zepo v2.4 - Off-line browser

Table of content


Introduction

Zepo is an off-line text-only Web browser and information center, with advanced features, tuned for PDA and mobile devices.

Zepo main window

An off-line browser?
You select sources of information on the Web, either Web pages, mail or news channels. Then, you connect your PDA to the Internet and synchronize Zepo cache to download the information.

Later, you can display the downloaded pages from Zepo cache, without the need for an Internet connection. So, you can read the news in the train or during a boring meeting...

Only text!
Why text-only when so many sites are so graphically rich? Zepo is aimed at running on PDA and mobile devices with a limited display size and frequently disconnected from the Internet. Zepo downloads and linearilizes Web pages to present information text in the most adapted way to PDA users. Page layout as designed by the Webmaster is adapted and rendered to fit to the PDA screen size, with changeable zoom level, colors and fonts.

An information center?
Zepo collects and prepares Web pages, e-mails or RSS news files for reading, the way the user wants them. But we plan to add other information sources and make them available on your PDA, at the moment when you want them.

With advanced features!
Apart managing a cache off-line, Zepo offers great features to the PDA user. In combination with the graphical browser, like Opera, you can access all Zepo cache content for full Web surf. Also, when flite is setup on the PDA, Zepo can read the pages content aloud!

For PDA and mobile devices?
Zepo is optimized to run on limited resources devices. Among its many features, it includes in a small memory foot print:

Selecting Web Sites

Selecting Web Sites

Select the Web pages you want to download:
  1. Press the Bookmarks page button Bookmarks.
  2. The Web selection pane is the first one displayed. You can move from one pane to another with the Next button and Previous button.
  3. Enter the name of the Web page
  4. Type in the URL of the page
  5. Select the depth of the download. Be carefull, as the size of the data in the cache grows exponentially with the depth. Selecting a depth of 1 is generally enough, meaning that the page and all the pages it references within will be downloaded.
  6. If you want the pages to be download only once and remain in the cache, check the Pin Pages checkbox. For instance, to download some documentation that does not change frequently.
  7. Add the page to the list with Add

To change a page content:

  1. Select the page in the list
  2. Do your changes
  3. Add it back into the list with the Update button

To remove a page from the list:

  1. Select the page to remove in the list
  2. Press the Delete

Authentication with a Web server

If the Web server from which you download the pages requests authentication, you can enter the URL with the syntax: http://user:password@hostname/path/...

Selecting Mail Servers

Selecting Mail Servers

You can use Zepo to read you mail. Currently, only POP3 mail servers are supported.
  1. Press the Bookmarks button Bookmarks button
  2. Go to the Mail accounts selection pane pressing the Next button.
  3. Enter a name for the mail server.
  4. Enter the mail server host name or IP address.
  5. Type in the user account mailbox name and the password to access it.
  6. Select the protocol (only POP3 presently) and the port number.
  7. Add the mail account to the list with Add

To change a mail account content:

  1. Select the mail server in the list
  2. Do your changes
  3. Add it back into the list with the Update button

To remove a mail account from the list:

  1. Select the mail server to remove in the list
  2. Press the Delete

Selecting News Channels

Selecting News Channels

Zepo downloads news files from news channels. The formats supported are RSS 0.91 and 1.0. You can select the news channel from which you want to fetch news, and Zepo will do it for you, even downloading the Web pages referenced in these news.
  1. Press the Bookmarks button Bookmarks button
  2. From the list of know channels, select one you are interested in.
  3. Check the channel description.
  4. Check the download checkbox if you want to download the Web pages that are referenced in this channel.
  5. Repeat the operation with the next channel.
  6. When you are done, validate the dialog

To remove a news channel from your selection:

  1. Deselect the channel title from the list of channels
  2. Validate the form

Updating The Cache

Updating The Cache

Updating the cache will download files and Web pages from the Internet, to allow off-line browsing later. You can select which sources you want to refresh.
  1. Make sure your PDA is connected to the Internet.
  2. Press the refresh button Refresh cache
  3. Unselect the check boxes for the news sources that you don't want to refresh the pages in the cache.
  4. Press the start button Start download.
  5. Wait for the download to end...
Depending on the number of pages or news you have to download, this operation can take a long time and consume a lot of storage on your PDA. If you download many pages, you could have to increase the memory allocated for Zepo. See the How To section for more information.

If your PDA is not connected to the Internet while doing this operation, Zepo cache will be emptied as non-fresh pages are deleted.

Using a proxy server

If you access the Internet through a proxy server, you need to set the proxy configuration before being able to update the cache. See User Preferences for the detailed steps.

Make sure to restart Zepo after you set your proxy parameters.

Displaying A Web Page

Displaying a Web Page

Even if your PDA is not connected to the Internet, you can display the Web pages you have downloaded.
  1. Select the channel or the Web pages from the Sources choice list Source choice list
  2. The Web pages, mails or news downloaded from the source are listed. The pages that have been downloaded have their title clickable.
  3. Click on the list element you want to display. The page is displayed as text-only. You can change in the User Preferences if the browser must respect font sizes or colors to use.
  4. Click on hyperlinks (text on a light yellow background) to display the linked page. If the page is in the cache, it will be loaded and displayed. Else a popup dialog proposes to download the page from the Internet: you can select Yes if your PDA is connected to the Internet to download and display it.

Move down or up the page using the cursor keys or the scroll bar.
[Up]One page up
[Left]One line up
[Down]One page down
[Right]One line down
Go back to the previous page with the Back button button.

If you select some text, it will be copied in the clipboard for you to use it in other applications. If auto-speach is set and Flite is installed, it will read the text selected aloud.
When you click on a link, the original URL of the link is saved in the clipboard and you can paste it elsewhere...

You can change display to a more constrated bi-colored one with the B&W button button. Press it again to restore the full color page.

Increase fonts size with the Larger font size button, and decrease it with Smaller font size. You can also use the [+] and [-] keys.

Some Web pages haven't been designed to be viewed in linearizer browsers like Zepo or PDA browsers. If the page uses many fonts variant, you can change Zepo configuration to use only one font size. Look at the User Preferences for how to do it.

Using an external browser

Displaying a Web in an external browser

If your cache is not compressed (see User Preferences), you can also display the Web page in an external browser:
  1. When the Web page is displayed in text-only mode by Zepo, press the external browser button Browser Button
  2. The graphical browser defined in your preferences (Opera on Zaurus SL-5x00 models) will run and display the page
Note that if you enabled some Zepo compression options such as don't download images or remove JavaScript blocks (see User Preferences), the page could not render correctly.

You can also access Zepo cache content with a browser, without having Zepo running (if your cache is not compressed).

  1. Open the index.html file in the cache directory. On a SL-5x00 Zaurus with the default configuration, it is located at /opt/QtPalmtop/java/zepo/cache/index.html.

Flite reads Zepo pages

When Flite is installed on the PDA, it can be used to read the pages, on demand or automatically.

Press the speaker button Speaker Button to start reading the current page aloud in the headset or the PDA speaker.

If the auto-read option is set in the User Preferences, it will automatically start reading when a new page is displayed. It will also read your text selection.

Like not all Web pages can be linearized for use on a PDA display, not all Web pages are structured well enough to be read and spoken by assistive software like Flite. Supporting W3C Web Accessibility Initiative helps build Web sites accessible to all browsers.

User Preferences

User Preferences

The User Preferences dialog allows you to configure and change Zepo settings to best use your PDA possibilities.
  1. Press the User Preferences button to access the options dialog.
  2. You can move from one pane to the following (respectively previous) with the Next pane button (respectively Previous pane button).
  3. Set the values to your preferences.
  4. Validate with OK button.
  5. Restart Zepo to apply the changes.

In a field where a file name or directory can be typed, click with the stylus to pop up a file dialog.
In a field where a color is expected, click to obtain a color chooser. You can type a color using HTML syntax (ex. #CCCCCC or red).
And in a field where a font is expected, click to obtain a font selection dialog. You can also type a font name like Serif-italic-12.

Global options
Language The language of messages and menus. English and French are supported presently.
Registration key Enter the registration key of the software to suppress the initial popup.
News channels The file name of the news feed definitions (default: channels.xml). You can edit this XML file to add your own news sources. The How To section describes an example.
To reduce size, this file is compressed and stored in the zepo.jar archive. If you want to add new feeds, just create a channels.xml file in Zepo directory with your news. The will be added to Zepo collection.
Cache directory The directory where downloaded files are stored. You can select a directory on a Memory Card to have a larger room and free your RAM. By default, the cache is in RAM on the Zaurus even if you install Zepo on a SD or CF card!
Cache compressed Select Yes to compress all the files in the cache. But if the files are compressed, you will not be able to view them in an external browser.
Cache compression adds also a memory and storage overhead. Downloaded files are zipped into the cache.zip file.
Network
Proxy host Enter the name or IP address of the proxy server that you use to access the Internet from your PDA. If you enter a name, you must have name resolution set on your PDA.
Port The port number on the proxy server.
Non proxy hosts If you don't need the proxy to access some hosts, enter the IP adresses or names separated by | in this field.
Proxy login If your proxy requires you to identify to access the Internet, enter your user account here.
Proxy password The password required by the proxy to access the Internet.
External Programs
External browser The command used to start the external browser. Use {0} to be substituted by the file name of the downloaded Web page. For instance, use runopera {0} to start Opera browser.
runhelpbrowser is available to use the Qtopia help browser instead.
Bookmarks File Type in the name of a bookmarks file if you want to access Zepo cache content from an external browser. This index Web page is generated at the end of download, in the cache directory. Default is index.html.
Read pages When selected, the speach program automatically reads the page aloud when a new page is selected.
The speaker button Speaker button starts reading the current page.
Talk program The name of the program that reads the pages. The first parameter {0} is the path to the file that contains the text to read, {1} is the origin URL, {2} is the command to execute.
HTML Filter
Remove comments Remove comments from HTML pages to reduce file size when they are downloaded.
Remove scripts blocks Remove JavaScript code from HTML pages during download. Selecting this option can make the page display with errors in another browser.
Remove styles definitions Remove CSS style definitions from HTML pages during pages download. When you select this option, Zepo could not render the page correctly.
Don't download files from other servers Select Yes not to download files referenced in the Web page if they are stored on a different host. This can be usefull to filter advertising and Web bugs.
Homes Pages
Headlines font The font used to display headlines on your Home page.
Headlines color The text color of headlines.
Description font The font used to render descriptions or summary of headlines.
Description color The text color for descriptions in the Home pages.
Browser Configuration
Text font Select the default font used for text in Web pages.
Text color Select the default text color used for text in Web pages. That's also the color the text will use in bi-color mode.
Background color Select the default background color, when the Web page does not specify it or in bi-color mode.
Links color The color of hyperlinks text. Background color is generally light yellow, but is system dependant.
Render fonts Some Web pages can use numerous fonts in various sizes. To always use the same size and type of font, select the Yes option. Zepo will use the default font you chose for text.
Browser Headers
Font HN header Set the font used to render HTML headers of level N.
Help Look
Titles font The font of title in first help screen.
Titles color The color of titles in help
Paragraphs font The font of paragraphs in help screen
Paragraphs color The color of paragraphs in help page
Text font The font of text in help page.
Text color The color of text in help page.
Cache Content
List List all the URL in the cache with the associated file. Displaying the list can take a few seconds.
Empty cache Press this button to clear the cache.

How to...

How to set a proxy on the workstation to access to Internet from my PDA?

You can access the Internet from your PDA through the USB craddle. But to do this, you will probably need a proxy or NAT software to run on you workstation. Do a search on the Web or your PDA vendor's Web site to find how to setup. For instance, how to setup the SOHO Java proxy for a Zaurus.
On Zepo side, set the proxy server IP address and port number in the User Preferences dialog, then start again Zepo for the changes to take effect.

Zepo does not run

First, check that you have enough memory free to run Zepo.
Then, check Zepo configuration in the file zepo.properties. In this file, you can change various parameters such as the display font and color, or the directory that contains the cache. All these parameters are commented in this file.
In last resort, you can change the debug level value debug.level in zepo.properties file. Set it to 1 to see warnings on standard error stream; 2 to obtain more detailed information.

How can I use a browser different from opera?

Change the external browser launched to display graphical pages. The script runopera can be used on a Zaurus to start Opera and work around the Opera bug that prevent to open local HTML files.

Should I compress or not the cache?

Cache compression and HTML filtering can dramatically reduce the footprint of dowloaded files, frequently down to 20% of original file size. But there are limitations.
Cache compression disables the possibility to open the pages in an external Web browser. You have to view them with Zepo text browser.
HTML filtering can disable some important features that prevent the pages to render correctly in the external browser, for instance supressing images or Javascript.

How can I had news channels?

Zepo can process RSS files to extract Web sites updates. It comes with more than 500 news channels definitions. But you can add your own channels definitions.
Many Web sites provide a backend feed for use with other applications. Once you get the RSS feed URL, create a channels.xml text file and edit it to add your definitions in it using the syntax:
<channels>
    <channel newsURL="http://linuxfr.org/backend.rss"
             title="Da Linux French Page"
             description="Nouvelles linux en français"
             language="fr"
             format="RSS" />
    <channel newsURL="http://x42.com/rss/rfc.rss"
             title="Latest Internet RFC"
             description="All the latest RFC:s."
             language="en"
             format="RSS" />
</channels>
	
Then type the name of this file in the News Channels field in the Global Options pane of the Preferences dialog. Validate the changes and restart Zepo.
Beware that this file is an XML file with strict syntax: tags must match and special characters like & must be encoded as &amp;.
Zepo scans its own definitions and then adds yours to the list.

If you want to have them included in the next versions of Zepo, drop me a mail at pp@alterna.tv.

How can I update the cache with a cron job?...

Zepo supports the following command lines arguments: Using -u command line from a cron job will start Zepo at planned interval and update the cache.

Zepo is launched by the runzepo startup script on the Zaurus, usually located in the /opt/QtPalmtop/bin directory.

How can I use Zepo if my PDA can't connect to the Internet?

If your PDA is not connected to the Internet, you can still use Zepo. But use this solution as last resort, as accessing the Internet through the USB craddle is a lot simpler.

Install Zepo on a connected computer with a Java environment and run it. Then, copy all the content of the cache directory to the cache directory on the PDA.

Now, you can run Zepo on the PDA and as long as you don't try to refresh the cache (Refresh cache), you will be able to display the downloaded Web pages.

I encounters errors when downloading news channels...

A majority of news channels content files use XML. But they don't respect XML syntax (for instance encoding & as &amp; in text) and they make Zepo XML parser fail. You can see messages like "error in parse @12,45" in the download window. Zepo XML parser tries to recover from some errors but not always succeeds.
Try to send an e-mail to the webmaster of these Web sites indicating that they don't respect XML syntax as defined by RSS.

Some Web sites display a 404 Page not found when I access them from a page in the cache

The Web is a highly dynamic media and pages can be created or die rapidly. It can occur that a link, referenced in a page of the cache, is no more valid when you access it later. In that case, refresh the cache to get the latest updates.

How can I prevent a URL from being refreshed?

In the Web selection dialog, set the URL as pinned. It will be downloaded in the cache once and will never be refreshed in subsequent downloads. Uncheck the pinned checkbox to have it refreshed again.

Can I put the cache directory on a Memory Card?

Qtopia uses a complex system of symbolic links, when applications are put on SD or CF memory cards, to make them appears in the RAM directory tree. As a consequence, even you install Zepo on a memory card, the default cache directory is set to /opt/QtPalmtop/java/zepo/cache in RAM.
To have the cache on a memory card, you have to change the default cache location in the User Preferences dialog to use an absolute path to the memory card, like /mnt/cf/cache.

How to increase Zepo runtime memory?

You can see the memory used and available in the About dialog. Press the About button to display the About popup.

About Zepo

Zepo can need more memory if you have many pages in the cache. To increase the memory allocated to Zepo, you have to edit the runzepo startup script and change the size of the memory that the Java Virtual Machine can use.
For instance, with Jeode on the Sharp Zaurus, that defaults 3440KB to Java applications, change the line:
MEMORY=
with
MEMORY=-Djeode.evm.memory.overallSize=7m
to give 7 MB for Zepo use.

How can I access a page content?

Zepo cache files are available for other software and you can tune Zepo scripts to your needs.

Support: How do I report a bug or enhancement?

If you are encountering a bug or you want to submit an enhancement, please e-mail me at pp@alterna.tv

If you think you've found a bug, you can turn Zepo trace on in the zepo.properties file: change debug.level value from 0 to 1 (warnings) up to 3 (verbose). Zepo traces all operations to stderr and logs its operations in the /tmp/zepo.err file. Please send me the zepo.err file with details and explanations on what you were doing when the problem occured.

Requirements

Zepo is a Java application that runs on all platforms supporting at least Personal Java 1.2, such as Sharp Zaurus SL-5xxx or IPAQ PocketPC with Jeode. But you can run it on a PC with the latest Java 2 version too!

You need 400 KB of storage for the Zepo program, and at least 100 KB free or more for cache storage. You can put cache on a Memory Card to save RAM. Downloading all Yahoo! news with a depth of 1, with cache compression leads to 275 KB used in cache (31 Web pages and 62 files).

You can remove the news sources you don't download from the channels.xml definitions file to gain even more room.

Usually, 5 MB of free memory are needed to run Zepo, shared by the JVM, Zepo code, runtime and cache data.

Zepo is a J2ME application that has been tested on Insignia Jeode and Sun Personal Profile.

How to obtain Zepo?

Zepo is available from Handango for Sharp Zaurus.
Some of the pictures are from previous versions
© Pierre Métras (2002-2003) - Last update: 20030621