kchmviewer logo
 
Navigation

Latest News
Download
Features
FAQ
Screenshots
Contacts

Features of kchmviewer

Kchmviewer is a free, open-source chm (MS HTML help file format) viewer written in C++ for Unix, Mac and Windows systems. Unlike most existing CHM viewers for Unix, it uses Trolltech Qt widget library, and could optionally be compiled for better KDE integration. It does not require KDE, but may be compiled with full KDE support, including KDE widgets and KIO/KHTML.

The main advantage of kchmviewer is the best support for non-English languages. Unlike other viewers, kchmviewer in most cases is able to correctly detect the chm file encoding and show it. It correctly shows the index and table of context in Russian, Spanish, Romanian, Korean, Chinese and Arabic help files, and with new search engine is able to search in any chm file no matter what language it is written.

kchmviewer is written by George Yunaev (see the contacts page for details), and is licensed under GNU GPL license. It uses chmlib, and some ideas and code from xchm.


Here is the full list of kchmviewer features:

  • Standalone viewer, depends on Qt only. Does not require KDE, but can use it for extra functionality if configured with --with-kde. Does not require or use Gnome, gtk or wxWindows libraries.
  • When compiled with KDE support uses a KIO slave, KHTML, KDE widgets and DCOP support.
  • Safe and harmless. In Qt mode ignores JavaScript, and warns you before opening an external web page, or switching to another help file. While using KHTML, executing Javascript is an option.
  • Supports tab browsing.
  • Correctly detects and shows encoding of any valid chm file.
  • Correctly shows non-English chm files, including Cyrillic, Chinese, Japanese and others.
  • Correctly searches in non-English chm files even using chm built-in search index (but does even better with its own search engine).
  • Correctly shows tables of content and indexes even in broken CHM files.
  • Shows an appropriate image for every TOC entry.
  • Has complete chm index support, including multiple index entries, cross-links and parent/child entries in index.
  • Persistent bookmarks support. Allows to store bookmarks even if "Favorites" window was not enabled for this chm file. Stores not only the page, but also the screen position for every bookmark. You can edit/delete bookmarks.
  • For any opened chm file stores the last opened window, window size, search and bookmark history, font size and other settings, so when you open this file again, everything is always on the place.
  • Has easy and powerful search-in-page support.
  • Allows to increase or decrease the font size, so handicapped people can read texts easily.
  • Has standard Back/Forward/Home navigation.
  • Has next-in-content-table and prev-in-content-table navigation.
  • Can print the opened pages on a standard printer (usually via CUPS).
  • Can show HTML source of CHM pages either using internal viewer, or external, specified by user.
  • Correct ms-its link support: can switch CHM files by clicking links in different CHMs.
  • Supports full-screen, and turning off content window.
  • Has advanced built-in search engine, which:
    • does not require the search index to be present in chm file.
    • indexes all the characters, including symbols, which allows you to search for code like "$q = new SWFAction()"
    • supports all the languages chm file could be written in, including those using Cyrillic, European or multi-byte chatsets.
    • supports phrase search.
  • KDE version supports automation through DCOP interface.