According to the Eclipse Web site, the Eclipse integrated development environment (IDE) is an "open source platform comprised of extensible frameworks, tools and runtimes for building, deploying and managing software across the lifecycle." Eclipse can be installed on Windows, Macintosh® OS X, or Linux (32–bit or 64–bit).
The Eclipse Help system contains search and indexing features, allows the triggering of workbench actions or Eclipse code from within Help topics, supports dynamic content and link filtering (when using XHTML), and supports globalization. You can even use Eclipse to manage the development, building, and testing of your DITA-sourced documentation plug-ins.
The Eclipse Help displays HTML- or XHTML-formatted topics, and organizes the topics according to the XML-formatted Table of Contents (TOC) files that are provided in each plug-in that contains documentation.
For more information on developing Help for Eclipse, refer to the documentation for the current Eclipse release, available on http://www.eclipse.org.
DITA Open Toolkit
The DITA Open Toolkit contains the transformations necessary to produce all of the files required for Eclipse Help plug-ins. No special setup or configuration is necessary. Refer to installation and configuration instructions within the DITA Open Toolkit to set it up.
Eclipse
Download Eclipse from http://www.eclipse.org. Installation involves unpackaging an archive file to any location on your machine. A Java Runtime Environment (JRE™) is required. Eclipse manages your development resources in workspaces, that also can be any location on your machine. You are prompted to select or create a workspace location to use each time you start Eclipse.
Eclipse documentation plug-ins
Documentation for the Eclipse Help system can be included in any plug-in, as long as the plug-in extends Eclipse's org.eclipse.help.toc extension point. It is up to the individual organization whether to include documentation inside code plug-ins or in their own plug-ins. There are several advantages to the latter, such as unambiguous plug-in ownership, or if the contents of the documentation plug-in will be globalized.
Plug-ins are named according to the Sun™ Java package naming guideline (for example, org.eclipse.help). Plug-ins that contain only documentation typically have .doc at (or near) the end of the plug-in name.
Within a plug-in, two XML files are required in the root (a manifest and a table-of-contents (TOC) file). Any number of content files may be included, in any location within the plug-in. The TOC file can be generated from a DITAMAP file, and HTML files will be generated from DITA files.
Plug-ins can be delivered to the Eclipse run-time environment as folders or as Java archive (JAR) files. Documentation within folders may exist in archives (for example, doc.zip). Archives cannot be nested (that is, a doc.zip cannot be included in a plug-in delivered as a JAR file).
Author DITA topics as you would normally. You can include any number of topic files, folders, DITA maps, or other file-based resources that can be delivered within browser environment (for example, images or multimedia).
PLUGINS_ROOT/PLUGIN_ID/path/to/target.htmlWhere PLUGINS_ROOT/ indicates that the target file is in another plug-in and PLUGIN_ID is the ID of the plug-in as declared in the manifest file. Refer to the Eclipse documentation regarding Help server and file locations in Help content: http://www.eclipse.org/documentation/.
To integrate your content into Eclipse, manually create a plugin.xml file that points to one or more TOC files in the plug-in, and a manifest.mf file (in a META-INF folder).
Plugin.xml file
<?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.0"?> <plugin> <extension point="org.eclipse.help.toc"> <toc file="hierarchy.xml"/> </extension> </plugin>
Manifest.mf
Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Garage Plug-in Bundle-SymbolicName: org.dita.garage.doc Bundle-Version: 1.0.0Note that what was the plug-in ID in the plugin.xml file is referred to as the Bundle-SymbolicName in the manifest.mf file.
TOC file
TOC files are generated from DITA map files. You may include any number of TOC files in a plug-in, as long as they are declared in the plugin.xml file.
<?xml version="1.0" encoding="UTF-8"?> <?NLS TYPE="org.eclipse.help.toc"?> <toc label="Garage (hierarchy)" topic="concepts/garagetasks.html"> <topic label="Garage Tasks" href="concepts/garagetasks.html"> <topic label="Organizing the workbench and tools" href="tasks/organizing.html"/> <topic label="Taking out the garbage" href="tasks/takinggarbage.html"/> <topic label="Spray painting" href="tasks/spraypainting.html"/> <topic label="Washing the car" href="tasks/washingthecar.html"/> </topic> <topic label="Garage Concepts" href="concepts/garageconcepts.html"> <topic label="Lawnmower" href="concepts/lawnmower.html"/> <topic label="Paint" href="concepts/paint.html"/> <topic label="Shelving" href="concepts/shelving.html"/> <topic label="Tool box" href="concepts/toolbox.html"/> <topic label="Tools" href="concepts/tools.html"/> <topic label="Water hose" href="concepts/waterhose.html"/> <topic label="Wheelbarrow" href="concepts/wheelbarrow.html"/> <topic label="Workbench" href="concepts/workbench.html"/> <topic label="Windshield washer fluid" href="concepts/wwfluid.html"/> </topic> </toc>
Building DITA content in Eclipse
It is possible to use Eclipse as your IDE for developing, building, and testing your Eclipse plug-in projects. Refer to the DITA Open Toolkit User Guide topic entitled "Running DITA builds in Eclipse."
Detailed instructions exist in the DITA-OT Help for producing Eclipse Help. Refer to DITA Open Toolkit User Guide topic entitled "Processing to Eclipse Help targets."
The image shows the content after it has been transformed and the plug-in has been added to a basic Eclipse run-time environment.
If you intend to take advantage of active Help or the dynamic content capabilities within the Eclipse Help system, such as link filtering, be prepared to create your own post-processing transforms to incorporate the required markup.
Whether creating documentation for an Eclipse-based application or for a standalone Eclipse Help implementation, consider DITA for your source content. Since Eclipse Help is one of the key output targets for the DITA Open Toolkit, setup, configuration, and processing are all straightforward and well-documented. For additional instructions on such advanced Eclipse Help capabilities as active Help, dynamic content, or remote Help, refer to the current Eclipse documentation, located at http://www.eclipse.org/documentation/.
Jeff Antley
IBM Corporation
OASIS DITA Help Subcommittee