Omni Systems, Inc.


Mif2Go User's Guide, Version 55


Valid HTML 4.01!


Made with Mif2Go

About this guide > New information

New information

The Mif2Go User's Guide is a perpetual work-in-progress, largely unreviewed.This section identifies substantive additions and corrections since prior editions. Corrections are shown in red.

May 15, 2013 version 4.1, update 55

Getting started with Mif2Go:

Copy m2rbook.dll and m2gframe.dll to the correct Plugins directory. These files are located in %OMSYSHOME%\m2g\plugin in your distribution, and they must be copied to your FrameMaker \fminit\Plugins directory; see § Finish installing Mif2Go.

Converting a book or document:

Access the Mif2Go Configuration Manager from the Choose Project dialog. New button; see §3.3 Creating a Mif2Go conversion project.

Editing configuration files:

Edit settings with the Mif2Go Configuration Manager. New tool, accessible from the Choose Project dialog; see §4.2 Editing files with the Configuration Manager.

Use relative path settings with care! Relativity of some path settings has changed, notably those listed in Table 4-1; see §4.5 Specifying file paths in configuration settings.

A relative path specified for [Automation]CopyAfterFrom is relative to the project directory (correction). Not to the wrap directory; see §4.5 Specifying file paths in configuration settings.

A relative path specified for [Setup]TemplateFileName is relative to the location of the configuration file in which the setting occurs (correction). Not to the source directory; see §4.5 Specifying file paths in configuration settings.

Setting basic conversion options:

One setting for output file extension. Use [Setup]FileSuffix for all output types; see §5.1.1 Checking output type and file extension. Though still recognized, the following are deprecated in favor of [Setup]FileSuffix, which overrides them in any event:





Turn off warnings about uncatalogued formats. New setting ShowUndefinedFormats, on by default; see §5.2 Logging conversion events.

Identify and use Structured FrameMaker attributes. New settings IDAttrName and IDRefAttrName, new section [AttributeMarkers]; see §5.8 Converting structured documents.

Converting to print RTF:

Double any backslashes in included RTF code. And double them again in a macro; see §6.15 Including RTF code for Word output.

Remove unwanted empty paragraphs at end of topics. New setting FrameEndPara; see §6.10.9 Omitting content from RTF output.

Producing on-line Help:

TopicAlias markers for context-sensitive help. Instead of hypertext newlink markers. New custom marker type TopicAlias; see §7.10.2 Specifying CSH mappings.

Generating Microsoft HTML Help:

Specify binary TOC or index for HTML Help. Newly documented settings BinaryTOC and BinaryIndex; see §9.9.2 Choosing whether to generate binary contents or index.

Exclude selected topics from FTS for HTML Help. An inelegant hack via new custom marker Search; see §9.11 Providing full-text search (FTS) for HTML Help.

Generate a CSH map file. New settings MakeCshMapFile, CshMapFileNumStart, and CshMapFileNumIncrement; see §9.12.3 Specifying and generating a map file for CSH links.

Generating OmniHelp:

Make compound terms searchable in OmniHelp. Newly documented setting CompoundWordChars; see §10.10.3 Making compound terms searchable.

Exclude content from full-text search. New custom marker Search; see §10.10.7 Excluding content from being searched.

Converting to HTML/XHTML:

Show FrameMaker condition indicators in HTML output. New section [ConditionOptions]; new settings UseConditionalFlagging, CSSFlagsFile, WriteFlagsFile, and ReferenceFlagsFile. See §13.10.3 Displaying condition indicators in HTML with CSS.

Prevent adjacent HTML <pre> elements from merging. New setting MergePre; see §13.6.5 Preventing adjacent <pre> elements from merging.

Converting to DITA XML:

Wrap anchored images in <fig> as an exception. Newly documented HTML format property Figure; see §15.7.2 Specifying what to include in a <fig> wrapper.

Keep selected topics out of the TOC. New marker type DITANoTOC; see §15.9.6 Omitting a DITA topic from the TOC.

CSH targets via TopicAlias markers are included by default. New setting UseTopicAlias; see §15.14 Including CSH targets in DITA XML.

Configuring DITA maps:

Omit id attribute from chapter maps. New setting UseMapID; see § Specifying the ID for a ditamap.

Creating HTML links:

Tell Mif2Go to leave link text case alone. Although its internal default value is No, MakeFileHrefsLower is set to Yes in system file d2htm_config.ini, which is referenced for every HTML output type. If you want Mif2Go to leave case alone in hypertext links, you must explicitly set MakeFileHrefsLower to No in a project or local configuration file; see §19.2.6 Forcing link text to lowercase.

Mapping text formats to HTML/XML:

Assign HTML tags in new configuration sections. [ParaTags] and [CharTags] replace [ParaStyles] and [CharStyles], respectively; see:

§21.3.1 Assigning HTML tags and attributes to paragraph formats

§21.4 Mapping character formats

Distinguish paragraph (block) from character (inline) format properties. New sections [HTMLParaStyles] and [HTMLCharStyles] supersede [HTMLStyles], which is still honored; see §21.5 Assigning properties to text formats.

Exclude size attribute from font tags. Newly documented setting UseFontSize; see §21.7.6 Excluding face and size attributes from font tags.

Setting up CSS for HTML:

Omit element tags from CSS selectors. New setting SelectorIncludesTag; see §22.7.10 Omitting tags from CSS selectors.

HTML table rows are now wrapped in groups by default. Reversed setting HeadFootBodyTags; see § Wrapping table row groups.

Working with macros:

Distinguish between paragraph and character code inclusions. New sections: 


Old section

New for paragraph formats

New for character formats
















The old sections are deprecated, but still honored; see §28.9.3 Surrounding or replacing text with code or macros.

Working with FrameMaker markers:

Replace marker content with code. New section [MarkerTypeCodeReplace]; see §29.7.2 Surrounding marker content with code.

No need to remap TopicAlias markers for CSH. No longer required, and not advised for DITA output; see §29.3.2 Understanding when to remap marker types.

Converting via runfm:

”Save As PDF” via runfm. New command-line option -pdfsave can avoid printer issues and TimeSavers issues; see § Configuring PDF output: runfm -pdfsave option.

May 1, 2012, version 4.0, update 54

Getting started with Mif2Go:

No “quick start” this time! Omni Systems has massively reorganized the Mif2Go distribution; see §1.3.1 Set up a framework for Omni Systems applications.

System-wide configuration file. Specify in one place any settings that apply to all projects; see §1.3.6 Establish system-wide configuration settings.

All Mif2Go executables are now referenced from the new Omni Systems directory structure, not from the Windows system directory. See §1.4.2 Update your Mif2Go installation.

Planning a conversion project:

Produce a single output file from a FrameMaker book. You really need a script to do this right; see §2.5.6 Producing a single output file from a FrameMaker book.

Editing configuration files:

New names for project configuration files! Each is now named for its output type; see §5.1.1 Checking output type and file extension.

Keep at least one line of header text. Each configuration file must start with a header line; see §4.4 Understanding the rules for configuration settings.

No more than one space after a key=value equals sign. Do not try to line up values vertically with extra spaces after the equals (before is usually OK, though not always); see §4.4 Understanding the rules for configuration settings.

Comment out entire configuration sections with a single semicolon. New tip; see §4.7 Commenting out configuration sections.

Append log files to a history file. New setting HistoryFileName; see §5.2 Logging conversion events.

ObjectIDs change on show/hide conditional text. Always! So use carefully; see §5.3.2 Working with FrameMaker ObjectIDs.

Condition show/hide settings might not work in FrameMaker 10+. Go back to importing FrameMaker templates instead; see §5.4.1 Applying condition Show/Hide settings.

Include a suffix in generated equation file names. New setting EqSuffix; see §5.9.4 Providing a file-name suffix for equations.

Converting to print RTF:

Specify a Windows code page for print RTF output. New setting CodePage; see §6.2.4 Specifying the default output language and code page.

Keep trailing tabs in Word output. New setting TrailingTabs; see §6.8.3 Altering tab behavior for Word output.

Produce .doc or .docx files via Word macro and a SystemEndCommand. See §6.17.1 Supporting more than one version of Word.

Producing on-line Help:

Produce index meta elements for Microsoft Help Viewer. New setting UseHVIndex, new custom marker type HVIndex; see §7.5.2 Preparing index entries for Microsoft Help Viewer.

Provide a sort order for Japanese index entries. Most likely you will need help; see § Defining Japanese index sort order.

Generating WinHelp:

Get WinHelp viewers from Microsoft. And so must every user; see §8.1 Obtaining tools for WinHelp

Tell Mif2Go where to find the WinHelp compiler. Previously undocumented setting Compiler; see §8.2.13 Compiling a WinHelp project.

Specify copyright and date for WinHelp Version Information. Previously undocumented settings HelpCopyright and HelpCopyDate; see §8.2.13 Compiling a WinHelp project.

Insert a separator between text and footnotes in WinHelp. New setting FootnoteSeparator; see §8.3.7 Converting footnotes.

Specify table width when you use column-width percentages for WinHelp. New setting TblFullWidth; see §8.5.2 Adjusting table appearance.

Generating Microsoft HTML Help:

Omit code-page mapping for uncompiled HTML Help. New setting UseCodePage; see §9.3.6 Deciding whether to compile HTML Help.

Generate Asian or Cyrillic HTML Help. New code-page DLLs; see §9.13 Generating HTML Help in non-Western languages.

Fixed spaces become ideographs for Japanese HTML Help. Or you can map them to something else; see §9.13 Generating HTML Help in non-Western languages.

Tell Mif2Go where to find the HTML Help compiler. New setting Compiler; see §9.14.1 Directing Mif2Go to run the HTML Help compiler.

Compile HTML Help in a different locale. Use command-line utility SBAppLocale; see §9.14.3 Compiling in a different language.

Generating OmniHelp:

.Include relative paths in OmniHelp subprojects to be merged. See §10.12.2 Listing and mapping OmniHelp subprojects.

Generating JavaHelp or Oracle Help:

Specify options for Oracle Help in their own eponymous section. New section [OracleHelpOptions]; for example, see § Letting Mif2Go set up the directory structure and copy files.

Add type attribute to list tags for JavaHelp and Oracle Help. New CSS setting UseListTypeAttribute; see:

§11.3.9 Coping with JavaHelp / Oracle Help viewer limitations

§ Including or excluding the type list attribute.

Converting to HTML/XHTML:

For ePub, XHTML output can provide input to Calibre. See §13.1 Deciding which type of output to produce.

For HTML 5 output, set DOCTYPE as appropriate. See §13.4.1 Specifying HTML/XML version, DOCTYPE, and DTD.

Omit generator information from HTML output (not advisable). Previously undocumented setting [HtmlOptions]GeneratorTag=None; see §13.4.4 Including or omitting HTML/XML generator information.

Generate XHTML for Confluence 4.x. New settings Confluence, ConfluenceLinks, and ConfluenceLink*; see §13.12 Generating XHTML for Confluence 4.x.

Supply hover text for terms and acronyms in HTML. New format property GlossTitle, new sections [GlossTitles]and [GlossFiles]; see §13.11 Providing hover text for terms in HTML.

Turn on UseSpacers explicitly to indent tables and figures! Important if your output relies on this setting, because the default value has been changed to No. See:

§23.6.3 Indenting images

§24.5.1 Indenting tables.

Converting to generic XML:

Keep Shift+Enter line breaks. New setting UseXMLbr; see §14.4.5 Configuring forced returns for XML.

Converting to DITA XML:

Map formats to elements depending on topic type. New functionality in [DITAAliases], new predefined macro variable $$_ditastart; see § Mapping paragraph format aliases algorithmically.

Replace change bars or overlines with tags for DITA XML output. When UseTypographicElements=Yes, you get <chbar> and <over> elements, respectively; see § Including typographic elements in addition to mapped formats.

Give every DITA element that can accommodate it an ID. New setting SetElementIDs; see § Including an id attribute in every element.

Specify attributes for the root element of a topic. New section [DITATopicRootAttrs], new marker type DITATopicRootAttrs; see § Specifying attribute values for the root element of a topic.

Include an outputclass attribute in the DITA XML root element. New marker type DITATopicOutputclass; see § Providing outputclass attributes for all elements.

Avoid constructing invalid ancestries. New setting UseCommonNames; see §15.5.6 Avoiding invalid ancestries.

Configure nested lists for DITA XML. See §15.5.8 Configuring nested lists.

Use relative or absolute table widths in DITA XML. New setting TableColsRelative; see § Specifying relative vs. absolute widths for table columns.

Give table footer rows an @outputclass of their own. New settings UseTableFooterClass, TableFooterClass; see §15.6.2 Marking table footer rows for future reference.

Specify placement of figure titles for DITA. New setting FigureTitleStartsFigure; see §15.7.2 Specifying what to include in a <fig> wrapper.

Omit size attributes from images for DITA. Newly applicable setting [Graphics]GraphScale; see §15.7.3 Omitting size attributes from images for DITA output.

Include MathFullForm equation objects in <alt> text. New setting MathFullForm; see §15.7.5 Including MathFullForm equations in <alt> elements.

Include FrameMaker DPI values in <image> attributes. New setting UseOtherpropsDPI; see §15.7.6 Including the original image DPI as an attribute.

Rename DITA topic files to make the file names readable. FrameScript method; see § Renaming DITA topic files with FrameScript.

Specify an outputclass attribute for cross-reference wrappers. New settings XrefWrapClass, FootnoteWrapClass, and IndexWrapClass; see §15.10.2 Specifying an outputclass for cross-reference wrappers.

Configuring DITA maps:

Adjust map levels for missing heading levels. See §16.2.3 Accounting for missing topic levels.

Include DITA bookmap <appendix> elements in <part>. New setting AllowPartAppendix; see §16.3.4 Extending <part> to include <appendix>.

Exclude book-level reltable from a bookmap. New setting MapBookRelTable; see §16.3.6 Excluding the book-level reltable from a bookmap.

Include multiple TOCs, indexes, other booklist items in a bookmap. New sections [IndexMarkerOutputClass], [DITABookmapOutputclasses]; see §16.4.3 Including multiple booklist components of the same type.

Accommodate placeholders for extra bookmap elements. New sections [BookmapElementBefore], [BookmapElementAfter]; see §16.4.7 Including placeholders for additional bookmap elements.

Converting to DocBook XML:

Allow multiple images in a figure element for DocBook. Newly applicable setting MultiImageFigures; see §17.7.1 Deciding what to include in a figure element.

Include additional content in figure elements for DocBook. Newly applicable setting CloseFigAfterImage; see §17.7.1 Deciding what to include in a figure element.

Specify placement of figure titles for DocBook. New setting FigureTitleStartsFigure; see §17.7.1 Deciding what to include in a figure element.

Omit size attributes from images for DocBook. Newly applicable setting [Graphics]GraphScale; see §17.7.3 Omitting size attributes from images for DocBook.

Splitting and extracting files:

Insert space or a separator between HTML topics in a single output file. New [Inserts] keyword TopicBreak; see:

§18.5.2 Assigning code to [Inserts] keywords for splits and extracts

§28.9.2 Invoking macros at predetermined points in output.

Creating HTML links:

Replace spaces in links with hyphens or underscores. Instead of only alphanumerics for XrefSpaceChar or HyperSpaceChar; see §19.2.5 Replacing problem characters in links.

Mapping text formats to HTML/XML:

Prevent line breaks and preserve leading spaces at the paragraph format level. New [HTMLParaStyles] format property NoWrap; see §21.3.6 Stripping paragraph properties.

Font tags are now excluded from HTML output by default. The default values for NoFonts and NoSymbolFont have been reversed; see:

§21.7.4 Including or excluding font tags

§21.7.5 Managing font tags for symbol fonts

Replace change bars or overlines with tags for HTML/XML output. Use new “pseudo tag” names chbar and over; see §21.8.2 Choosing how to treat typographic elements.

Setting up CSS for HTML:

Replace spaces in CSS class names with hyphens or underscores. Instead of only alphanumerics as a value for ClassSpaceChar; see §22.7.1 Understanding CSS class name restrictions.

Flag alternate-language glyphs with CSS classes. New setting UseCharRangeClasses, new section [CharacterRangeClasses]; see §22.7.6 Assigning CSS classes based on Unicode character ranges.

Including graphics in HTML:

HTML image indent spacer default has been reversed. If you rely on this deprecated technique, you must explicitly set UseSpacers=Yes; see §23.6.3 Indenting images.

Omit empty alt attribute values from HTML output. New setting AllowEmptyAlt; see §23.8 Providing (or omitting) alternate text for images.

Converting tables to HTML:

HTML table indent spacer default is reversed. If you rely on this deprecated technique, you must explicitly set UseSpacers=Yes; see §24.5.1 Indenting tables.

Strip HTML code from selected tables. With configuration macros or Config markers; see:

§24.6.4 Turning processing on and off around selected tables

§24.7.2 Removing table-specific tags from selected tables.

Working with macros:

Add a visible trailing space to a macro. New convention “\~” for trailing spaces; see § Escaping special characters in macro definitions.

Predefined macro variables for project name and path. New variable $$_prjname; also, variable $$_prjpath can now be used in macros as well as in system commands. See Table 28-3.

More ways to manipulate strings. New macro expression operators lower, upper, and replace with; see Table 28-4 Operators for HTML macro expressions.

Pass a parameter to a macro, and capture its value. New predefined macro variable $$_macroparam; see §28.7 Passing a parameter to a macro.

Working with FrameMaker markers:

Treat marker content as plain text for XML output. New marker property type Text; see §29.7.3 Processing marker content as text for XML/HTML/XHTML.

Working with templates:

Configuration templates play a major role now. New [Templates] section with new settings Document, Configs, and Macros; see §30.1 Working with configuration templates.

[FDK]ConfigTemplate is deprecated in favor of [Templates]Configs. Replace all instances of the former; see §30.2 Referencing configuration files and templates.

Include one or more templates for document-specific settings. New setting [Templates]Document; see §30.3 Including document-specific configuration files.

Working with graphics:

Extract embedded graphics imported from Word. Without knowing their formats; see §31.2.7 Exporting embedded graphics imported from Word.

Automating Mif2Go conversions:

System-command keywords have new names, new configuration section


















See §34.4.1 Specifying system commands.

Whip FrameMaker variables into shape for use in file names. Whack spaces and punctuation with macros; see § Including FrameMaker variables in output file names.

Use variable <$$_objectid> in file names. To guarantee uniqueness, if you are determined to name output files yourself; see § Specifying a file-name prefix or suffix.

Producing deliverable results:

Copy ancillary files before and after conversion. New [Automation] settings CopyBeforeFrom, CopyBeforeFiles, CopyAfterFrom, CopyAfterFiles; see:

§35.5 Gathering additional files before converting

§35.6.6 Listing extracurricular files to put in the wrap directory.

Default value of WrapPath is now .\_wrap, relative to the project directory; see §35.6.1 Specifying a wrap directory.

Gather referenced graphics files for distribution. New setting CopyOriginalGraphics; see §35.7.1 Copying referenced graphics to a distribution directory.

Default value of ShipPath is now ..\..\_ship, relative to the project directory; see §35.12.1 Specifying a shipping directory for deliverables.

Converting via runfm:

Log in as administrator before you set up runfm. Because you must write to the Windows Registry; see §36.2 Setting up FrameMaker for unattended operation.

About this guide > New information