This website is using cookies. We use cookies to ensure that we give you the best experience on our website. More info. That's Fine
HPC:Factor Logo 

Haali Reader 2.0b264

Open Source
ebook reader
You must be registered and logged into HPC:Factor in order to contribute to the SCL.

Screenshots & Images

Screenshot of Main screen


eBook reader that features:

- Loads plain text and XML files.
- Cyrillic encodings support with autodetection.
- Last viewed position in file is saved on exit.
- ClearType support.
- Any font/size can be selected.
- Fullscreen and landscape mode.
- Colors can be adjusted.
- Text search.
- Dictionary support. Tapping a word opens a translation window.
- Automatic hyphenation (russian language only).
- Table of contents and bookmarks
- Multiple columns support (1-4)
- PRC/PDB files support (plain text and XML only, HTML is not supported).
- Builtin ZIP archives support.
- Autoscroll (controlled from keyboard/buttons only, settings are in Options->Buttons).

Home News Docs FB 2.0 FB2.0 Scripts&Utilitites; Russian page
Main screen
The main window consists of the text pane, the progress bar and the menu/toolbar. Drag the stylus over the text pane to select text, use Tools->Copy to copy the selected text to the clipboard. Tap text to perform dictionary lookup (if "use dictionary" is selected in general options). While in dictionary mode you can enter words directly into the main window to perform word lookup. Double tap any whitespace to toggle fullscreen mode. Tap on the progress bar moves the current position in the document. Tap on the small arrows at the ends of the progress bar moves current position to the next/previous contents item. Toolbar buttons provide shortcut access to the following menu items in order from left to right: Back, Forward, Contents, Add bookmark, Find, Find next, Copy.



Copy - copy selected text to the clipboard.
Find - find text in the document.
Find next
Back - undo last "large" movement - basically anything other than page/line up/down.
Add bookmark - brings up create bookmark dialogue box, enter in bookmark name OR before choosing "Add bookmark", select text on screen to use as name and dialogue box will have selected text ready to be accepted / edited as the new bookmark name, you don't need to copy the selection to clipboard to use this feature.
Contents - bring up the book's contents. For XML documents this will probably be a tree of parts and sections, for plain text documents a simplistic algorithm is used to detect chapter headings. Bookmarks are inserted into the tree according to their position in the document. These are marked with a picture of a pen, and section titles are marked with a red triangle/double triangle. To navigate to the selected item either select one and hit ok or double tap it. Tap user created bookmark's quickly to edit (rename), tap and hold to: see position in document in percent, edit, or delete / remove bookmark. Tap red cross in bottom left hand corner of screen to cancel.
Recent files - select recently opened document(s).
Open - bring up file selection dialogue. Tap red cross in bottom left hand corner of screen to cancel.
About - bring up a useful about screen. Lists author, version of HaaliReader, full file name/path, size of text (uncompressed), compression ratio (if any), number of paragraphs, format of file/text, position in file as Paragraph_number:Character_number.
Exit - exit / quit without prompt.


Fullscreen - toggle fullscreen mode (turns off title bar and toolbar).
File format - select file format from the following list: Auto, Line per paragraph, Indented first line, MAC line per paragraph, MAC indented first line, XML. The first five deal with different formatting of plain text documents, MAC variants are available for files which use \r (0x0d) as end of line markers instead of traditional \n or \r\n. File encoding can also be selected from the encodings available in your windows version. HaaliReader has five builtin encodings that are always available: windows-1252 (a superset of iso-8859-1), windows-1251, cp866, koi8-r - these are cyrillic encodings, and utf-8 for unicode texts.
Display - set various text display options. The top part of the dialog is used to select the base font for the text. At the botom there are input boxes for ajusting side margins and the botom margin, display rotation and selecting the number of columns on screen (this is handy for HPCs which have a wide screen). Use soft hyphens checkbox turns on the builtin hyphenation module for russian language.
Colors - allows the user to adjust the colors of the interfaces elements. Various highlight items work together with the Styles dialog and are only useful for rendering XML documents.
Styles - select format to use for each XML style / tag. Style is specified as a modifier to main font selection.
Buttons - assign function to hardware buttons and if present keyboard buttons. Use grab key to assign funtions to hardware buttons. Hardware buttons are released back to the operating system when HaaliReader's window loses focus. If rotate is mapped to a hardware button, screen is rotated 90 degrees anti-clockwise.
Dictionaries - add, remove, view HaaliReader dictionaries. Dictionary should be in .DIC format (see mkdict tool on how to make a custom dictionary). Only one active dictionary is used for word lookup, to change the active dictionary select it in the list and tap OK button.
General - adjust all other propram's options. Use dictionary checkbox specifies wheter single taps in the main window should cause word lookup, rotate buttons tells the program to swap functions of the cursor control buttons when the display orientation chages. File buffer size specifies the amount of file data cached in memory, can set it to some high value if you read books from a microdrive to avoid frequent access to the storage device. The last input field specifies how many most recently opened files are tracked in the registry. Bookmarks are also stored in the registry.

Keyboard reference
Accelerator keys that are not present in the buttons dialog:

Control-C - Copy
Control-O - Open
Control-F - Find
Control-G, Control-3, F3 - Find next
Control-Q - Exit
Alt-Left - Back
Alt-Right - Forward

F2 - edit bookmark in the contents dialog

File position specification can be entered directly into the main window. Use following format: <number>% to move to certain percentage, or <number>= to move to a certain paragraph.
In regexp terms: ([0-9]+)([;:][0-9]+)?([lLpP%=gG])
When $3 is p, P, %: move to $1 percentage into the document
When $3 is l, L: move to a virtual page $1 (virtual page is 2048 charactes long)
When $3 is =, g, G: move to paragraph $1, character $2

When dictionary view is active, word lookup can be performed by entering text into the main window. A temporary panel in shown with the entered text, and a dictionary lookup is attempted as you enter text. Tab key clears the input panel, unfortunately, the default input method in PocketPC/PsPC systems doesn't include the escape key, so I had to choose something else to cancel current input.
Last modified: 2002/09/17 06:36
Author: Mike Matsnev, mike@po.cs.msu.su

Installation Instructions

Copy .exe file to handheld and tap on it to run

Sources ( 736k), An english-russian dictionary ( 2.4M), mkdict ( 41k) - a tool for creating custom dictionaries, dictionary source should be a plain text file with one entry per line, entry title should be separated from the body with two spaces.

The dictionary format is different from 1.x versions, so to use a dictionary in new versions either download a new dictionary file or decode the old dictionary with mkdict tool and recreate it from source. The new file should be in a new format. You'll need an Win2k/XP system to convert existing dictionaries, mkdict won't work on Win98/ME systems.


ReadereBookOpen Sourceebook readerXMLText File

License Open Source
The program is open source, free and the source code is available on-line.
Popularity 473
Total Downloads  112
Submitted By Rich Hawley
Submitted On 07 March 2014


torch 10 January 2023 at 5:29:00 AM
-Source Code
-CE4 MIPS Version
-CE3 ARM version
-EN/RU Dictionary
-MKDICT supplemental file

You must be signed-in to post comments in the SCL. Not registered? Join our community.

Software Compatibility List: The SCL is provided for free to the Handheld PC Communty and we do not carry advertising to support our services. If you have found the SCL useful, please consider donating.