Linux.com

Feature

FOSS help authoring tools falter

By Bruce Byfield on August 31, 2005 (8:00:00 AM)

Share    Print    Comments   

At first, looking for free and open source software (FOSS) tools to generate Windows Help files seems an oxymoron. "Most open source projects are intended to help people break out of Microsoft's grip, rather than break in," one poster responded when I queried about the topic on the technical writers' mailing list. Yet, surprisingly, free Help Authoring Tools (HAT) do exist. The trouble is that some require expertise beyond that of those most likely to use them, and none can match the features or ease of use of major proprietary programs. As a result, none of the three applications I unearthed -- AurigaDoc, export from DocBook, and HelpMaker -- is completely satisfactory.

Today, HAT tools focus mainly on Microsoft Compressed HTML Help, also known as HTML Help or, among GNU/Linux developers, as CHM. HTML Help replaces the former WinHelp format, which is still supported by all versions of Windows, but has started to fall out of favor.

HTML Help is a proprietary format. It consists of individual HTML files compiled into a single database-like file with a .chm extension. The compiled files also support tables of content and keyword searches. Windows' support for the format includes a compiler (hhc) and a viewer (hh) that also doubles as a compiler that breaks down a .chm file into its component HTML files. In addition to online help, the format is also used for some ebooks, presumably on the assumption that the format can be readily viewed by anyone.

Plans for a revised version of HTML Help appear to have been abandoned in favor of a new XML-based format for Vista, the next version of Windows. For now, HTML Help remains the most widely used format for help systems on Windows.

FOSS HTML Help utilities

A search through SourceForge and the Internet shows three major categories of Windows Help utilities are well-represented in free software. Viewers such as kchmviewer and GnoCHM are intended largely for viewing .chm ebooks or occasional APIs published as a .chm file. Other utilities, such as arCHMage, combine viewers with decompilers, allowing users to edit the contents of .chm files.

Another group of tools extracts comments from source code and converts the result into .chm files. Most of these tools are specific to a programming language. They include .Net tools such as NDoc, Java tools such as Javadoc2Help, and Delphi tools such as Opus Documentor and DelphiDoc-JADD. All these tools produce useful results only when the source code is heavily commented. They also assume a workflow in which writers can edit source code and help files are not an afterthought. Such assumptions are relatively rare in software companies, so the usefulness of these tools is probably limited.

The limits of cross-platform solutions

Numerous projects for cross-platform or GNU/Linux-based tools for producing .chm files have been announced, but most of them are in the planning stage, and have released little or no code. The only two that seem polished enough to use are AurigaDoc and DocBook, two XML-based solutions that are well-known in other contexts.

Unfortunately, neither seems ready for widespread use. AurigaDoc is distributed as source code, and requires compiling with Apache Ant, a process that its documentation assumes that users are already familiar with. DocBook is better known, but the number of available elements and the lack of a FOSS graphical editor for it makes it intimidating for typical technical writers whose focus is on the writing aspect of their job rather than the technical. Both also require an understanding of Extensive Stylesheet Language Transformations (XSLT). In addition, DocBook may require some manual editing of files if problems arise.

If you can overcome these obstacles, you can produce basic .chm files with both applications. However, neither supports keyword searches, nor are they set up for project management of multiple files, a feature that is one of the main attractions of proprietary HTML Help products for the average user.

A Windows-based FOSS solution

Windows-based shareware for creating .chm files, such as Angel Writer and GridinSoft Notepad, is relatively common, but beyond the scope of this article. The only FOSS .chm generator that is anywhere near ready for prime time is HelpMaker.

Unlike AurigaDoc or DocBook, HelpMaker offers the graphical interface that Windows users expect. If the editing window looks crude compared to RoboHelps, it is at least familiar to its target audience. More to the point, HelpMaker includes functions such as a search and replace function for Unicode -- which HTML Help doesn't support -- and dialogs for assigning Topic IDs and keywords to additional pages. Like RoboHelp, it also manages files destined for the same .chm file in a project tree view.

Its only eccentricity is its definition of styles. These are not the styles you would expect in a word processor-like program like HelpMaker, but font characteristics such as the weight, alignment, and position. Even more strangely, these characteristics are placed, apparently randomly, into two sub-menus labeled Styles 1 and Styles 2.

The one drawback to HelpMaker is that its exact status is unclear. The project's SourceForge page lists its license as the GPL. However, the online help for the software lists the product as freeware. The help also contains a section entitled Why Not Open Source that suggests that the product was withdrawn because of lack of community support and negative comments. Yet above that section is an unofficial license that reads like an informal version of the GPL. To deepen the mystery, the SourceForge page does not contain source code, and, while the product's home page contains a link to a more recent build, a link on the page to a newsgroup no longer works. Nothing else is on the home page, nor do the developers listed on SourceForge respond to email.

This uncertainty makes HelpMaker as unsatisfactory a solution as AurigaDoc or DocBook. In theory, if it were ever released under the GPL, its code would be available for other developers, but locating it might be a challenge.

Still useful

Despite all these obstacles, there are several reasons to hope for a viable FOSS HAT. To start with, developers and writers who work on a FOSS platform may also need to work on Windows-based projects. Many, no doubt, would prefer to avoid working on Windows whenever possible, and a GNU/Linux-based tool would allow them to do so. At times, too, developers and writers may work on multi-platform projects that require Windows support, if only as a secondary priority.

More importantly, the lack of an advanced FOSS HAT represents a missed opportunity. For technical-writers, free HATs could be an introduction to FOSS that doesn't require leaving the familiarity of Windows.

This reason is especially important because of recent developments in the commercial HAT market. In 2003, eHelp, the maker of RoboHelp, the leading HAT tool, was acquired by Macromedia. Since then, the product has apparently suffered a number of setbacks. The FrameMaker version has been discontinued, and RobHelp programmers have been laid off. With rumors that the terms of service contracts have been altered to exclude upgrades, and that a plan to shift development to India was shelved, added to the uncertainy caused by the recent acquisition of Macromedia by Adobe Systems, many believe that RoboHelp is about to be "sunsetted" -- that is, allowed to become gradually obsolete.

As a result, many developers of Windows Help are currently looking to other proprietary solutions, such as Doc-to-Help and AuthorIt. Former eHelp employees have recently started a company called Madcap, which plans to release an XML-based HAT called Flare by the end of 2005. However, the experience of seeing a widely used tool abandoned by a proprietary company might well cause some writers to decide that enough is enough and consider FOSS solutions. Unfortunately, today, no satisfactory FOSS solution is available to harness their discontent.

Bruce Byfield is a computer journalist who writes regularly for Linux.com.

Share    Print    Comments   

Comments

on FOSS help authoring tools falter

Note: Comments are owned by the poster. We are not responsible for their content.

Need to compile AurigaDoc?

Posted by: Anonymous Coward on September 01, 2005 03:18 AM
No, you don't. I've used it for a couple of years now, and I haven't had to compile it. Ever. All I really had to do was write a script to encapsulate all the command line options that I use.

#

Re:Need to compile AurigaDoc?

Posted by: Anonymous Coward on September 01, 2005 02:21 PM

Yes thats correct. You do not have to compile AurigaDoc unless you do some modification in the source code. AurigaDoc has ready to use command line scripts for both windows and unix. You may further wrap those scripts in another one to invoke them with frequently used parameters.



AurigaDoc also has an ant task that makes it possible to integrate the document generation step into the build process.


#

Halibut

Posted by: Anonymous Coward on September 01, 2005 07:19 AM
Halibut, as forked by the NSIS project will generate the raw HTML files required for compilation by Microsoft's HTLM Help program. It also generates Microsofts old-style help files directly, and as it is ANSI C will compile and run on both Linux and Windows. I merged the code bases of the NSIS fork and the latest Halibut release (0.9) a while ago and use it to generate HTML Help for a program I am writing. As it's a Windows program, it isn't too much of a hardship to use MS's commandline compiler to compile the HTML that Halibut generates.

Works for me<nobr> <wbr></nobr>:)

#

Who cares.

Posted by: Anonymous Coward on September 02, 2005 12:20 AM
This is a stupid article.

#

Re:Who cares.

Posted by: Anonymous Coward on September 02, 2005 12:26 AM
Why is it stupid? Or are you just bored and killing some time by trolling?

#

Bigger Problem

Posted by: Anonymous Coward on September 02, 2005 03:07 AM
I've been a tech writer for over 10 years, and the problem described here goes beyond<nobr> <wbr></nobr>.chm files and HTML Help. Creating online help for web apps has its own demands that are cross-platform in nature. Using simple HTML is not sufficient: web app users need to have contents, search, and index functionality. Currently, there is no good FOSS alternative there either.

XML seems to be an obvious answer, especially for single-source needs, but the tool chains are long and unreliable. There is an Eclipse path with OrangeVolt XSLT and Vex XML editor, but I never got it running as <a href="http://blog.mea-culpa.net/?p=13" title="mea-culpa.net">zx described in his blog</a mea-culpa.net>. Even so, the HTML output doesn't include online help tools, like a search.

It's frustrating because the resources and tools for a solution are there, but it requires some work. Unfortunately, I'm not a programmer, or I'd throw myself into such a project.

#

Re:Bigger Problem

Posted by: Anonymous Coward on September 02, 2005 03:44 PM
There are already tools to generate html, pdf, chm, java help, etc from single source like html. CHM, java help include search, index option. CHM is not available on all platforms. Although java help is cros platform it requires one to install jvm.

In addition to the ability to generate help in html(cross platform) , somekind of cross platform search tool is also required withought the hassles of installing additional s/w like a jvm, etc.

#

Help Authoring Tools = HTML Authoring Tools

Posted by: Anonymous Coward on September 02, 2005 09:24 AM

I think this article misses the point.



The reason there are not many help authoring tools in the F/OSS world is that having a yet another incompatible file format is a waste of time.



Help files are functionally a subset of HTML and there is no advantage in treating them differentally. HTML is portable to numerous platforms, is well known and has a vast array of tools available for it.



Packaging of existing HTML authoring tools in a way that helps help authors might be worthwhile though - something that includes one of the many existing indexing and search tools and also includes a tool for managing a large number of context sensitive help links from application to HTML.

#

Why do you say helpmaker has no source?

Posted by: Anonymous Coward on September 07, 2005 12:46 PM
I see a zip file there at SourceForge with the Delphi source code. It doesn't seem to be for the latest version, but it is there.

#

Re:Why do you say helpmaker has no source?

Posted by: Anonymous Coward on October 10, 2005 08:16 AM
Helpmaker has been removed as open-source. The version that is available for download, in the words of its author, "won't compile". Since build 70 (the last open-source version) the program has aparently been rewritten. The author placed installers for the later non-open-source versions of HelpMaker on Sourceforge, which is why the Sourceforge project appears to be more up-to-date than it is.

The author has no intention of ever releasing it as open-source again.

#

FOSS help authoring tools falter

Posted by: Anonymous [ip: 218.212.188.201] on February 25, 2008 09:17 PM
hi,
I am the author of HelpMaker.

I wonder what you are talking about. HelpMaker is maintained and we resolved many issues since this article is written. You can get our product at:
http://www.vizacc.com

Thank you for your time.

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya