Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

CHM viewer apps - Fast offline manual access Pick of the Week
CHM viewers imageThe macosxhints Rating:
7 of 10
[Score: 7 out of 10]
A somewhat odd PotW this week, as there are actually two of them ... and neither one is really perfect for what I needed, but they were good enough to get the job done. While upgrading the forum site to the newest version of vBulletin, I wanted convenient access to the vBulletin documentation. The docs are available in HTML, printable (everything on one page) and CHM formats. I hadn't heard of CHM before, but it's apparently a Microsoft-proprietary technology for compiled help files in HTML format. Although the HTML version of the manual was easy enough to download (Save As in Firefox has an option to save the whole collection of pages and images), I was curious about the CHM manual, as I'd seen them on other sites (, for instance). After a bit of digging on the web, I found two OS X CHM readers - xchm (open source) and CHM Viewer ($4.95 shareware), so I downloaded both for a trial run.

After playing with both programs for a couple of weeks, each definitely has its strengths and weaknesses. First, xchm is a free and open source application that leverages some other open source technologies, and thanks to Chanler White, it's a simple drag and drop install. Its major advantage over CHM Viewer is that it has a working search system, making it quite easy to see all matches for a given keyword(s). You can also create bookmarks, to make quickly finding an important page in a long manual much easier. However, xchm doesn't render the pages nearly as nicely as does CHM Viewer (see screenshot below), and I had it crash on me once or twice. Printing is present, though basic -- you can only print the currently viewed page. Finally, and this may be specific to my setup, I couldn't get any embedded internet links to open -- they would say "loading," but then nothing would happen.

CHM Viewer is an OS X native Cocoa shareware app, priced at a very reasonable $4.95 (free trial version available, but see note below), which is about all I'd pay for such an app, given there's a free alternative. CHM Viewer's biggest advantage over xchm is its ability to render a nicer looking page, as seen in the screenshots below. In addition, CHM Viewer is one of a growing number of apps that takes advantage of Apple's open source Webkit to render HTML pages -- external links render directly in CHM Viewer, and you can then navigate the WWW via a rudimentary browser if you wish. As an example of the differences in the rendering engines, consider the following screenshots. As for the difference in page rendering, consider these two pages. CHM Viewer is on the left and xchm is on the right, showing the same page (at close to the same size in both shots) of the vBulletin manual; click either image for a larger version (about 120KB per picture).

As a Cocoa app, you have full access to the Services menu, and CHM Viewer also has easier-to-use font size controls, with + and - scaling buttons available directly on the toolbar. CHM Viewer's most glaring omission is its lack of support for any sort of searching, which greatly limits is usability if you don't know what you're looking for! It is, like xchm, limited in its ability to print only the currently viewed page, though improved printing is on the list for future improvements.

One major heads-up, at least with the current shareware version: CHM Viewer pops up one of those standard shareware registration nag dialogs. That, in and of itself, is fine with me. However, the warning is set to come up every minute, and (most annoyingly!) it activates the bouncing dock icon to alert you of the dialog. So if you leave CHM Viewer in the background and start working on something else, you'll soon be clicking your dock to activate and silence the registration reminder ... but only for another 60 seconds, then you get to do it all again. I've had some email correspondence with the author, and suggested that the bouncing dock icon was enough of an annoyance that many people wouldn't even bother to register (he's considering changes in a future release). Since I was finding the program useful, I went ahead and registered (and at only $4.95, I didn't have too many worries about getting value for my registration dollar).

So if you ever need to view a CHM manual on your Mac, there are at least two tools that will mostly get the job done. I wound up using both of them -- I spent most of my time in CHM View, and switched over to xchm only when I needed to search for something. If CHM Viewer can add more robust printing, a basic bookmark manager, and (most importantly) support for searching, it will be a clear winner in my book (but hopefully with some changes in the nag reminder for non-registered users). The CHM format was actually quite useful; it's very speedy, and it's convenient having to only keep track of one file, instead of an HTML index page and associated folder of backup pages and images. As I said at the beginning, neither app is really close to perfect, but they do get the job done...
  • Currently 2.11 / 5
  You rated: 4 / 5 (9 votes cast)

CHM viewer apps - Fast offline manual access | 8 comments | Create New Account
Click here to return to the 'CHM viewer apps - Fast offline manual access' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
CHM viewer apps - Fast offline manual access
Authored by: fireproof on Apr 07, '04 09:58:37PM
If you only want to un-pack a CHM file you could use Tubby -- it's a version 0.4 and seems plenty stable to me. GPL'd and only 104k!

The webpage also says the developer plans to turn Tubby into a full CHM viewer at some point.

[ Reply to This | # ]

CHM generator app ?
Authored by: zakaria on Apr 08, '04 06:21:42AM

I really like the idea of having a local representation of a "site" or better said a lot of intertwingled html pages. Is .chm in any way related to the Internet explorer archive format ? And I wonder if there is a way to generate a .chm file e.g. to for offline reading of a downloaded site...or is there another way to have a "site" in one file which I have missed ?

be part of the solution not of the problem

[ Reply to This | # ]
Authored by: _Gekko_ on Apr 08, '04 11:59:54AM

There seems to be a OS X solution to create .chm files.
I am here referring you to the website I found. I haven't tested these apps so I don't know if it really works.
You will need the PPWizard App and a "OL DOC" header file to do it.

[ Reply to This | # ]
The best site archive format: iCab's vanilla ZIP
Authored by: VRic on Apr 13, '04 07:11:08AM

The best archive format for web pages or sites is iCab's genious archive format: plain vanilla ZIP. Others will wake up someday and realize that, let's just hope they'll then acknowledge where it came from and won't make it just different enough to break compatibility.

iCab's "Save" (for current page) and "Download" (to follow links) commands put the exact content in a zip archive (replicating all files and folders hierarchy, with the domains as root folders). Some pages generated on the fly by scripts don't exist as files on the server and may not expand correctly from the archives, but anything else is transparent.

iCab has countless clever features, but the tricks to do this with vanilla zip files are incredibly brilliant and put all other browsers' ridiculous attempts to shame:

- you can share the archives with any user of any browser on any platform. They will have to decompress the archive unless other browsers authors see the light, but at least it's possible, unlike IE's stupid proprietary format, which isn't even compressed (not to mention stupid IE RE-DOWNLOADS the current page to save it even though it's already in RAM, in RAM cache, and in disk cache, idiots). By the way, iCab's homepage has a conversion utility from IE's useless archives to iCab's cross-platform zip

- RELATIVE LINKS still work in iCab, yet there's absolutely NO ALTERATION of the code or structure unlike any other tools that claim to "preserve" the links (everything that is in the archive is read from there, everything that isn't is found transparently on the web thanks to an obvious trick to preserve the original URL: simply deduce it from the archive's folder structure), of course relative links won't work if you extract the files from the archive to somewhere on your disk, but that's exactly what any web page author would expect since you get the exact original content (tools that alter the code to make relative links absolute are useless as archive formats for authors, who wrote relative links for a reason)

- the archive is a standard zip file with absolutely no proprietary addition, just add ".zip" to the name to share it with PCs

- to tell that iCab owns it, it has ZIP•/iCAB type/creator codes and an empty "iCabWebArchive" file at the root of the archive (which may be useful if PCs and non-HFS disks kill the type codes)

- the first compressed file in the archive being the current page's source code, that's how iCab finds out where to start in a complex hierarchy, which is an insanely simple trick (of course non-iCab users who extract the files will have a harder time finding the relevant start page manually if the original had parts in countless folders and domains)

- there's nothing stopping you from editing the archive or forging one manually: just make sure the empty "iCabWebArchive" file is there and that your starting page is the first added to the archive (ZipIt has an "order" sort column to show that), then set its type/creator to ZIP•/iCAB (the 4th char in "ZIP•" is a "big dot" bullet).

Example, here's how this page looks in an iCab archive:

iCabWebArchive (empty file) (folder)
  article.php?sto0040407190019282 (html source as seen in the URL)
  images (folder)
  layout (folder)
    Classic (folder)
      images (folder)
        topics (folder)
      theme-images (folder)

Now let's say I'd like to archive the linked screenshots too, but I don't want to download every linked file at level 2 or scratch my head to find how to filter out everything else while downloading. I just need to download those 2 files (option-click on each), look at their address in the browser's status bar or in their Finder comment to know where they belong, then add them to the "images" folder in the archive using ZipIt or StuffIt Deluxe or whatever (and reset the archive's type/creator if the zip program changed that).

[ Reply to This | # ]
CHM viewer apps - Fast offline manual access
Authored by: CkB_Cowboy on Apr 08, '04 10:00:16AM

Hopefully this .CHM viewer isn't succeptible to the same explot that's currently ravaging all those Windows machines!


- Cowboy

My ill-matic homepage:

[ Reply to This | # ]
CHMOX: A new 100% native Cocoa CHM viewer
Authored by: Nucleus on Jun 04, '04 06:14:00AM

Open source, free, use WebKit (Safari engine), CHMLIB..

Feedback is welcomed

[ Reply to This | # ]
CHMOX: A new 100% native Cocoa CHM viewer
Authored by: feiry on Jun 19, '07 02:33:03AM

It's great with cocoa... and it's free...

[ Reply to This | # ]
you picked the wrong xchm version
Authored by: intelmac on Jun 20, '06 10:53:45AM

Well that comparison is no longer current. xchm is slimmer now since the developer is making the build (vs. the initial mac os maintainer), it has more features (text selection, copy/paste works, find-in-page, etc.), it's a universal binary and doesn't crash at all.

[ Reply to This | # ]