July 30, 2012: We have posted a review of FrameMaker 11.
Here is our initial impression of FrameMaker 10.
I’ve grouped the new FrameMaker 10 features into a couple of categories: overdue but welcome, minor enhancements, important new functionality (for unstructured and structured FrameMaker), and “huh?”.
I’ve also provided a handy FrameMaker 11 to-do list for Adobe.
Note that my categories here are based on the importance of the features to the end users and not on the engineering difficulty.
Overdue but welcome
In this category, you’ll find features that are welcome additions. These include the following:
- Real-time spell-checker with the expected squiggles under misspelled words
- Drag and drop text
- Ability to set background color for text (but still no box around a paragraph)
- Set poster for multimedia content (this was broken in FrameMaker 9)
- Improvements to PDF comment import (ditto)
These are all nice, but given this is version 10, a bit late to the party.
These are nice-to-haves:
- Improved tag view—You can now collapse and expand tags in Tag view. This makes the Tag view much more useful. The collapse/expand settings are also applied to the Structure View.
- Repeat last operation—Similar to Transform Again in Illustrator. Lets you repeat the previous command.
- Table Catalog (not Table Designer, which is already there)—Gives you a palette, similar to Paragraph and Character Catalog palettes, from which to select table formats.
- Extended rich media support—A long list of audio and video formats that can be imported.
I like these features, but they are minor improvements.
Important new functionality for unstructured FrameMaker
Here are the most important changes for unstructured FrameMaker:
FrameMaker authors know that managing their template and avoiding style creep is important. FrameMaker 10 provides new support to help manage this process. The Find/Change dialog box has new support for finding (and removing) overrides. Also, the various catalogs let you control which formats are shown, so you can filter to display only unused formats and then delete them. These features will make template designers and template managers happy.
Track Changes improvements
You can now track changes at the book level, and you can set the colors for the changes you are tracking.
Improvements for conditional text expressions
If you use complex conditions, you are going to be much happier in FrameMaker 10. In this version, Adobe has added the ability to save your conditional expressions and to copy them from one document to another via Import Formats. This was a big gap in the user experience in version 9. However, you still cannot use parentheses in your so-called Boolean expressions.
A similar feature is available for Filter by Attribute (which is for filtering in structured documents). The Import Formats dialog box contains a new setting that lets you copy these items from one document to another. Also, the expressions and settings are saved in the XML file as processing instructions.
FrameMaker 10 will let you work directly with files in two CMSs. Unfortunately, those two CMSs are Documentum and Sharepoint. The vast majority of our customers implement a CMS for structured content, and these two CMSs are particularly unsuitable for DITA. We can only hope that we will see connectors for other CMSs shortly.
Until now, scripting FrameMaker required the acquisition of a third-party tool, FrameScript. In version 10, FrameMaker includes ExtendScript, which is the standard used across many other Adobe applications. Early rumors are that ExtendScript is much more difficult to use than FrameScript. The addition of ExtendScript will be helpful to system integrators like us, though. In the past, we’ve had to ask our customers to license FrameScript, and sometimes the requirement for an additional piece of software has been a problem. Now, we can build scripts in the core product.
Important new functionality for structured FrameMaker
New features on the structured side include the following:
DITA 1.2 support
FrameMaker 10 includes support for DITA 1.2 features, such as keyrefs. If you are planning to author DITA 1.2 content, this is critical.
DITA specialization support
FrameMaker now provides support to convert a specialized DTD into the necessary files to support the specialization in FrameMaker.
I don’t quite understand the dialog box, so I decided to consult the FrameMaker 10 help. My first search resulted in FrameMaker 9 community content, so I checked the Adobe reference only option and searched again.
Hmmm. A brief survey of the table of contents located this:
I expect better from a $1000 product that is marketed to technical writers. Actually, I expect better from $50 shareware.
New Attributes Editor
Editing attribute values is much improved with the new Attributes Editor. You can edit several attributes, and you can display only the attributes that are required or that have a value. This is helpful with DITA, which has a lot of attributes.
Structured Application Creation Wizard
I am puzzled by the inclusion of this feature, and more puzzled by how Adobe is positioning it:
Benefit from a basic infrastructure for working with structured Adobe® FrameMaker®. With this highly intuitive, UI-based tool, users can start working with structured FrameMaker even if they don’t have any prior knowledge or training. (http://www.adobe.com/products/framemaker.html)
Let’s take this point by point. The “highly intuitive, UI-based tool” is a dialog box. The dialog box makes it easier to configure the infamous structapps.fm file. Unfortunately, it does nothing to address the underlying design problems that makes structapps.fm necessary in the first place.
A bit of history is in order here. FrameMaker is unusual in the XML/structured authoring tool world because it provides for authoring and publishing in a single application. It gives you a WYSIWYG display of your XML content and makes excellent PDF output from XML. (“Excellent PDF” from DITA is much harder to achieve than you might think.)
To provide publishing support, FrameMaker must take XML elements and attributes and turn them into FrameMaker objects. For example, a <p> element in DITA needs to become a FrameMaker paragraph and have a paragraph tag (or paragraph formatting) assigned to it. A <b> element needs to become inline text with a character tag. This mapping is done in a variety of configuration files:
- Element definition document (EDD) describes the structure (usually derived from a DTD) and the formatting (often referencing a formatting template)
- Template file has the formatting definitions, including paragraph, character, and table tags, along with master pages and other constructs
- Read/write rules manage some of the more complex mappings, such as index elements
The structured application definition file lists the various configuration files for a given structure type. And the Structured Application Designer lets you more easily specify the files—instead of having to add them to the file by hand, as before.
Do you see the problem yet? I see a bunch:
- The structapps.fm file is a total kludge. It’s been around since the earliest versions of structured FrameMaker (aka FrameBuilder), but it is nonetheless a kludge.
- Setting up the structured application is a one-time task and is typically done by one person in an organization. That person can then distribute the configuration files and the modified structapps.fm file to all authors within an organization.
- The challenging part of the structured application development is creating the various configuration files. Once those exist, actually referencing them in structapps.fm is the least of your problems.
- Claiming that the Structured Application “wizard” makes it possible for people to work in structured FrameMaker without training is like saying that because the Boeing 777 has an autopilot, anyone can fly it.
Why, then, is Adobe wasting precious development time on providing an interface for something that extreme FrameMaker experts use once a year? I can only speculate that they are being criticized for an arcane configuration process, so they provided a wizard. Unfortunately, the wizard does nothing to address the actual problem—the required configuration files.
Huh? aka XML code view
What, you say? There’s an XML code view?? Wow. Why didn’t you lead with this?!
“View in Notepad” is exactly that. VIEW. As in, look at but don’t change.
Things you can’t do with View in Notepad:
- Edit the XML file
- See changes that you have not yet saved
This pretty well demonstrates the problem with the entire structured authoring experience in FrameMaker. The information displayed in FrameMaker is a “rendered” version of the underlying XML file. When you “View in Notepad,” you are looking at the underlying, UNrendered XML file. Furthermore, by default you are not looking at a text version of your current document but rather a text version of your last-saved document.
Here is what you need to do make this feature semi-usable:
- Change the default text editor. This setting resides not in maker.ini, but in a new, single-purpose TextEditorPlugin.ini file, found on Windows under %APPDATA%AdobeFrameMaker10. Open up TextEditorPlugin.ini and you’ll see this:
- Close and restart FrameMaker.
- Now, you’ll at least see your preferred text editor. Remember that the “View in text editor” feature is exactly that. View. If you attempt to edit the text file that’s displayed, you’ll get an error when you attempt to save. You can, of course, close the file in FrameMaker and then make changes in the text editor.
I changed mine to this:
UPDATE (January 20, 2011): See my comment #17 below for some additional clarification on this.
The implementation of this “feature” shows a general lack of understanding of the actual users and their actual requirements. When we clamor for “XML code view,” what we actually want is the ability to edit the XML files directly and then continue working in FrameMaker. But the developers chose to implement something that meets the letter of the requirement (XML code view) but doesn’t provide useful functionality. The Structured Application Creation “Wizard” has a similar issue—it provides a graphical interface for modifying the structapps.fm file, but does nothing to address the deficiencies of the structapps.fm concept.
Helpful FrameMaker 11 to-do list
Here is a helpful to-do list for FrameMaker 11. These are basic problems that were not addressed in version 10 (or 9 or 8…):
- Fix CMYK printing issues
- Provide support for boxes around paragraphs without using tables
- Provide ability to print contents of Structure View
- Show all text in Structure View instead of cutting it off
- Support proper Booleans with parentheses for conditional expressions
- Make Show Element Context window resizable. (In v9 and previous, it was resizable, but making the dialog box bigger did not cause the text inside to reflow. Version 10 “corrects” this by removing the ability to resize. Unfortunately, reading lengthy context rules can be quite challenging.)
- Use standards-based files for configuration of structured authoring (DTD or schema rather than EDD)
- Editable XML code view (I’d settle for oXygen bundled with FrameMaker)
There’s going to be some screaming about this one. You qualify for upgrade pricing if you have a license for FrameMaker 8 or 9. Those of you with FrameMaker 7 licenses are out of luck and must pay full price for FrameMaker 10. You can, however, get a discount based on your FrameMaker 7 licenses if you license the new Technical Communication Suite 3, which includes FrameMaker 10.
Detailed pricing information is available at Adobe’s site on the FrameMaker product page. It appears that the upgrade from FrameMaker 9 (in the U.S.) is $399 and a full license is $999. However, there’s a price configuration tool that you have to go through to figure out your particular price. Good luck.
Should you upgrade?
If you need the DITA 1.2 support, yes. If you need the CMS connectors to Documentum and Sharepoint, yes. If you’re still on FrameMaker 7.2, you’ve been handed an opportunity to reevaluate your toolsets because this is going to be one expensive new license.
If you’re in FrameMaker 8 or 9, you’ll have to see if there’s a compelling new feature here.
All in all, I think this release is disappointing. The FrameMaker user community deserves better.