Customizing Frame Products
Customizing Frame Products
FrameMaker 6.0 ®
Customizing (Windows)
ii
Contents
Customizing Locating customization files ..................................... 3
FrameMaker Products
Adobe, the Adobe logo, and Adobe FrameMaker are trademarks and Adobe is a service mark of Adobe Systems Incorporated which
may be registered in certain jurisdictions. All other products and trademarks mentioned in this document are the property of their
respective owners. 2000 Adobe Systems Incorporated. All rights reserved.
3
You can customize your FrameMaker product environment in many ways by editing initialization files. In
some cases, you may also want to edit the setup files referred to in these initialization files. This chapter
describes the changes you can make by changing settings in the initialization files.
Special characters
While editing a FrameMaker product initialization file, you may need to type a character not immediately
accessible on a standard keyboard (that is, whose hexadecimal (hex) code is greater than \x7f). For
example, you may need to enter special quotation marks (see “Quotation marks for Smart Quotes” on
page 20). You can do this by typing a backslash followed by the character’s hex code. For example, to
include an acute-accented e (é) in the name of a custom dashed line, you use the hex code for this character
(\x8e). Your entry in might look like this:
8=Sp\x8ecial, 12, 6, 6, 6
The hex codes are listed in the FrameMaker Character Sets online manual. Some special characters might
not display properly in dialog boxes.
ADOBE FRAMEMAKER 6.0 5
Changing Initialization Files
The other entry specifies the initialization file for the FrameMaker product:
HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\FrameMaker\5.5\IniFile
(default) = maker.ini
or
HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\FrameMakerSGML\5.5\IniFile
(default) = fmsgml.ini
If you move the install folder or if you move or rename the initialization file, change these entries in the
registry. You can specify an absolute pathname or a pathname relative to install_dir. You edit the
registry by running the Registry Editor (choose Run from the Windows Start menu and then enter
regedit).
If you change the FrameMaker product settings recorded in the registry, the changes will take effect the next
time you start the FrameMaker product.
You may also want to define a new location for some of the setup files. For information about changing the
location of these files, see “Additional settings” on page 12.
• The Version setting specifies the version of the product that you have installed.
• The Language setting specifies the default language dictionary and the default paragraph language. The
initial setting specifies US English. You can enter the name of one of the other languages available in the
FrameMaker product, but you must have the dictionary for that language installed for the FrameMaker
product to work.
Registration information for the product is specified in the [RegInfo] section of the FrameMaker
product initialization file. This section includes three settings, User, Company, and RegNum, which are set
during installation.
• The AskExit setting determines if the FrameMaker product asks for confirmation before exiting.
• BackupOnSave determines if a backup file is automatically created when you save a file.
• The value for AutoSave is in minutes and determines how often the FrameMaker product creates a
backup file for the active file, whether or not you have saved it.
Logging errors
ShowErrors=On
ErrorFileName=consfile.txt
• ShowErrors determines if error messages are displayed in the console window when they occur.
ADOBE FRAMEMAKER 6.0 7
Changing Initialization Files
• ErrorFileName specifies the name of the file that error messages are written to if there is a system
crash. If that happens, immediately make a copy of the consfile.txt file. This file will contain
important debugging information, which can help a Technical Support engineer track down the problem.
Be sure to copy this file before restarting, since the file is overwritten with a blank one whenever a
FrameMaker product starts.
Zoom=25, 50, 80, 100, 120, 140, 150, 160, 200, 400
• The value for GreekSize is in points and specifies the point size at which text displayed on the screen
is grayed out.
• The Zoom setting defines the values that appear in the Zoom pop-up menu. You can change these values
to any values between 25 and 1600. The values are percentages, with 100 representing a document’s print
size. If the line contains more than 10 values, only the first 10 appear in the pop-up menu. The zoom values
are updated every time you exit the FrameMaker product, using the current settings in the Zoom pop-up
menu.
• The PenWidths setting defines the widths that appear in the Line Widths pop-up menu in the Tools
palette. Each value specifies a line width in points. You can change a width to any value between .015 and
360 points. These values are updated every time you exit the FrameMaker product, using the current
settings in the Line Widths pop-up menu.
DefaultRulerInch=0.125in
DefaultRulerCm=0.5cm
DefaultGridInch=0.5in
DefaultGridCm=1cm
DefaultSnapInch=0.125in
DefaultSnapCm=0.25cm
• The DefaultRuler settings provide the default values for the tick marks on the vertical and horizontal
rulers in new custom documents.The DefaultGrid settings provide default values for spacing of the
visible grid lines. The DefaultSnap settings provide default values for the spacing of the snap grid lines.
There are a pair of settings for each of these items so that both inches and centimeters can be specified. The
values that the FrameMaker product uses depend on the measurement system specified in the Number tab
of the Regional Settings Control Panel in Windows.
Important: You must include a unit of measure (in, ", or cm) with each value.
MonitorSize=Default
ShowQuickAccessBar=Off H
ShowFormattingBar=Off
ADOBE FRAMEMAKER 6.0 8
Changing Initialization Files
• The MonitorSize setting specifies the size of your monitor so that the documents and dimensions you
see on the screen (such as for margins and objects) are very close to their actual size. Initially,
MonitorSize is set to Default. If you want greater precision in the measurements you see on the screen,
fill in the diagonal measure of your monitor. For example:
MonitorSize=17in
Important: You must include a unit of measure (in, ", or cm) with this value.
For more information about this setting, see the online manual Working on Multiple Platforms.
• The ShowQuickAccessBar setting determines if the QuickAccess bar appears when you start the
FrameMaker product. To specify a horizontal or vertical QuickAccess bar, include an H or V after the On
value. This value is updated every time you exit the FrameMaker product, using the current setting in the
View menu.
• The ShowFormattingBar setting determines if the formatting bar appears when you start the
FrameMaker product. This value is updated every time you exit the FrameMaker product, using the
current setting in the View menu.
RememberMissingFontName=On
• The RememberMissingFontName setting determines whether the names of unavailable fonts are
preserved so that the original fonts can reappear when the file is reopened on a computer where they are
installed. For information, see the online manual Working on Multiple Platforms.
Filename conventions
CrossPlatformFileNaming=Windows 95
• The CrossPlatformFileNaming setting controls the file naming convention that is used. The default
is Windows 95. The other choices are Windows 3.1, UNIX, and Macintosh.
For details on these file naming conventions, see the online manual Working on Multiple Platforms.
FrameViewer preferences
The FrameViewer initialization file (fmviewer.ini) contains additional [Preferences] settings.
When you change some aspects of your Frame environment through the user interface, FrameViewer saves
these changes by writing them to the initialization file when you exit. For example, if you change the zoom
settings that appear in the Zoom pop-up menu when using FrameViewer, these changes are saved in the
fmviewer.ini file. If a user does not have permission to write to the initialization file, such changes are
lost.
FrameViewer displays an alert box during startup if the user cannot write to the initialization file. To
suppress this alert box, in the [Preferences] section of the initialization file, change the On value to Off
in the following line:
NonWriteableIniAlert=On
ADOBE FRAMEMAKER 6.0 9
Changing Initialization Files
Font alert
When you open a document created with fonts that are not available in your environment, FrameViewer
displays an alert box asking whether to reformat the document by replacing the missing fonts with available
ones. The default for the alert box is to display, but you can suppress it by adding the following line to the
[Preferences] section of the initialization file:
SuppressFontAlertOnOpen=On
To enable the font alert box, change the On value to Off.
Language alert
You can choose to have FrameViewer display an alert box when you open a document created with language
dictionaries not available in your environment. By default, the alert box does not display, but you can enable
it by changing the following line in the [Preferences] section of the initialization file:
SuppressLangAlertOnOpen=Off
To disable the language alert box, change the Off value to On.
You can choose to keep or remove the structure in a structured FrameMaker+SGML document for viewing
in FrameViewer. The structure affects text selection behavior. If you keep the structure, text selection
(based on structure element boundaries) behaves differently than it does in unstructured documents. If
you choose to remove the structure, FrameViewer presents a document with text selection behavior based
on ranges of text rather than on structure element boundaries.
By default, FrameViewer strips the structure when you open a document. Because FrameViewer cannot
save, stripping the structure does not affect the document on disk.
If there are FDK clients for FrameViewer that need the structure information (see “Enabling FDK client
programs” on page 9), you may add the following line to the [Preferences] section of the
fmviewer.ini file to keep the structure information intact:
StripStructureOnOpen=Off
To remove the structure, change the Off value to On.
• FDK clients are plug-in programs that are integrated with FrameMaker products using the Frame
Developer’s Kit™ (FDK) and Application Program Interface™ (API). The [APIClients] section of the
initialization file contains a list of FDK clients to start when FrameMaker products start. (For more infor-
mation, see “FDK clients” on page 16).
To start FrameMaker products without starting FDK clients, change this setting to Off. If you do so, the
WordCount document report and the online manuals’ Print Manual buttons won’t work.
ADOBE FRAMEMAKER 6.0 10
Changing Initialization Files
Format preferences
UsePostScript=On
ClipboardFormatsPriorities=FILE,OLE 2,EMF,META,DIB,BMP,MIF,RTF,TEXT
FMImage=Off
• The UsePostScript setting determines if FrameMaker products use built-in methods of generating
PostScript code instead of standard Windows methods. If the product uses the built-in methods, it can
print faster and produce higher quality documents. To use standard Windows methods instead, change this
setting to Off. Also, changing this setting to Off makes FrameMaker products print the preview image of
EPS graphics instead of the PostScript image.
• The ClipboardFormatsPriorities entry controls what format is used when you paste or when you
drop a file into an open document.
An item can be stored on the Clipboard with multiple formats. This entry specifies the order for the
formats used to paste Clipboard items. In this entry, priority in the list goes from left (highest) to right
(lowest). To give a format higher priority, move it farther left in the list. The first format in the list which
matches a format on the Clipboard will be the format used to paste the item.
The FILE format instructs a FrameMaker product to check whether the object being dropped or in the
Clipboard is a file. If it is, the file is opened; if the file is not in a recognized graphic format, it is embedded
as an OLE package.
This precedence applies to all items you paste from the Clipboard. You can override this precedence for
individual paste operations by using Edit > Paste Special rather than Edit > Paste.
If you comment out this line (by starting it with a semicolon), the FrameMaker product uses the first of
the formats associated with the Clipboard item. Depending on what kind of item is on the Clipboard, the
format can vary from one paste to the next.
• The FMImage entry controls whether a FrameImage facet is saved with imported graphics by default.
The initial FMImage setting is off.
Menu preferences
MenuSet=Complete
;MenuSet=Quick
;MenuSet=Custom
• FrameMaker products have two built-in sets of menus. Complete menus are the menus and commands
as described in your user guide and in online Help. Quick menus are a subset of complete menus. You can
also create your own custom menu set. The MenuSet setting defines which set of menus appears when you
start. By default, the Complete menu set is used.
ADOBE FRAMEMAKER 6.0 11
Changing Initialization Files
To change the MenuSet setting, remove the semicolon from the setting you want and insert a semicolon
before the setting you don’t want.
AutoMnemoniseMenus=On
ConfigWarnKbdRedundant=Off
ConfigWarnKbdOverride=Off
StickyPopupThreshold=500
• The AutoMnemoniseMenus setting determines if mnemonic command shortcuts are shown on menus.
Mnemonic shortcuts are underlined letters in command labels. When a menu is open, you can choose a
command by typing the underlined letter (for example, the O underlined in the Open command on the
File menu).
The letter that is underlined is specified in the command configuration files (see “Adding shortcuts for a
command” on page 34). When the product loads these files, it automatically generates the specified
mnemonic shortcuts. To prevent FrameMaker products from creating these command shortcuts, change
the AutoMnemoniseMenus setting to Off.
• Keyboard shortcuts (key sequences) are also defined in command configuration files. You can change the
default shortcuts or add shortcuts in your menu customization file. If you set ConfigWarnKbdRe-
dundant to On, you will see warning messages when you load the customization file if it contains
redundant shortcut definitions. If you set ConfigWarnKbdOverride to On, you will see warning
messages when you load the customization file if it contains shortcut definitions for commands that
already have shortcuts defined for them. The warning messages appear in the console window.
For more information about command configuration files, see “Changing Menus and Commands” on
page 26.
• The StickyPopupThreshold setting controls how long you must hold down the mouse button for
pop-up menus, such as the Zoom menu, to open. The preset value, 500, specifies an interval similar to that
for opening menus in the menu bar.
For more information on customizing menus, see “Changing Menus and Commands” on page 26. For
more information on how to load a menu customization file, see “Menu and command configuration files”
on page 14.
• Windows 95 hides file extensions for registered file types when filenames are listed in browser windows
or shell windows. You can disable this extension suppression with a view option in the shell. The
FrameMaker product suppresses file extensions in its browsers and in the document and book window
headers if shell suppression is enabled. If shell suppression is disabled, FrameMaker products will also not
suppress the file extensions.
The SuppressExtensions setting controls which file extensions are suppressed when suppression is
enabled. By default, only .fm and .book extensions are suppressed. If you want to disable all file extension
suppression, you can either disable extension suppression in the shell or edit SuppressExtensions to
have a blank value.
ADOBE FRAMEMAKER 6.0 12
Changing Initialization Files
Additional settings
NetworkLock=On
• The NetworkLock setting causes the FrameMaker product to create a lock file (.lck) when you open
a file. The lock file deters others from opening the same file and changing its contents while you have it
open. They can, however, open a view-only copy of the file.
Keep this setting set to On if you’re sharing network files in a workgroup. If this setting is set to Off, it’s
possible for more than one person to open the same file and overwrite each other’s work.
SplashScreen=Off
BannerFont=Arial
• By default, a banner, called a splash screen or a banner screen, appears when you start. You can suppress
it by adding the SplashScreen setting to the [Preferences] section of the initialization file. You can
also specify the default font used in this screen by changing the BannerFont setting in the [Fonts]
section.
Folder names
The following settings are in the [Directories] section of the initialization file:
HelpDir=help
LanguageDir=dict
TemplateDir=templates
FilterDllDir=filters
OpenDirOnStart=
PaletteDir=fminit\product
AlwaysOnTopPaletteDir=
ColorLib=fminit\Color
FontDir=fminit\fonts
FontDirCache=fminit\fonts\.cache
UnicodeDir=fminit\unicode
PluginDir=fminit\Plugins
ADOBE FRAMEMAKER 6.0 13
Changing Initialization Files
• HelpDir specifies the folder that contains the files for the online Help system.
• LanguageDir specifies the folder that contains files with language-specific information, such as
hyphenation settings and language dictionaries for spell-checking.
• TemplateDir specifies the folder that contains the standard templates that come with the product,
except the ones for custom documents and text files. You can change this setting to point to a network
folder that contains templates for your workgroup. For information about the default templates, see your
user’s manual.
• FilterDllDir specifies the folder that contains the filters installed on your system.
• OpenDirOnStart specifies which folder should initially appear in the Open dialog box. Every time you
exit, this is updated to the folder from which you last opened a document.
• PaletteDir and AlwaysOnTopPaletteDir specify palette folders. The values for these settings are
a list of folder names, separated by commas. When you store a document in one of these folders, the
FrameMaker product treats it as a palette (such as the Tools palette or Equations palette). Palettes in
AlwaysOnTopPaletteDir always float in front of documents.
ColorLib specifies the folder that contains color library files. These files are read in at startup and appear
in the Color Libraries pop-up menu in the Color Definitions dialog box. You can add any library file
formatted in the ASCII Color Format (.acf), version 2.1 or earlier, or in the Binary Color Format (.bcf),
version 2.0. You can’t use a FrameMaker product to save a .bcf library file.
• FontDir and FontDirCache specify the folders to scan for variable-width font information for
Japanese fonts. Do not change these settings.
• UnicodeDir specifies the folder that contains Unicode files that are used to support Asian text in
Acrobat bookmarks and other Acrobat features.
• PluginDir specifies the folder that contains API clients. Plug-ins placed in this folder will automatically
be loaded at startup. You can also load API clients by adding entries to the [APIClients] section (see
“FDK clients” on page 16).
CustomDoc=fminit\custom
CompareDoc=fminit\compare
AsciiTemplate=fminit\txttmplt
• UserDictionary and SiteDictionary give the names and locations of dictionary files.
EquationDoc=fminit\equation
ThesaurusDoc=fminit\thesaurs
TemplateBrowserDoc=fminit\tmpltbrw
VerticalQuickAccessBar=fminit\vertqab
ToolBarIniFile=fminit\fmtoolbr.ini
• ToolBarIniFile specifies an initialization file used to determine the layout of the QuickAccess and
formatting bars and the pop-up help text that appears when you point to a tool. You may change the tool
help text but don’t change any other settings.
Resources=fminit\fmres.dll
DialogResources=fminit\fmdlg.dll
AlternateResources=fminit\fmcustom.dll
EPSHeader=fminit\header.ps
FMFont=fminit\fm5font.ttf
FMSmallFont=fminit\fmsmall.fon
• FMFont specifies the font used for symbols for anchored frames, markers, tabs, and so on. Do not change
this setting. If you move or delete this font, these symbols will be displayed incorrectly on your monitor. If
you need to reinstall the font, reinstall the FrameMaker product application files.
• FMSmallFont contains the font used in the Tools palette. Do not change this setting.
• ConfigCommandsFile specifies the file that contains commands common to all platforms.
• ConfigCustomUIFile specifies the file that contains additional custom menus or changes to existing
menus or commands that you have added. The default file for this setting is customui.cfg. You can
either add your menu customizations to this file, or create your own file and put its path and filename in
this setting.
• The MathCharacterFile specifies the file that defines special math characters.
All these files are loaded at startup. For the order of precedence of these files, see “Precedence of the config-
uration files” on page 28.
FirstRunOpenDoc=
PluginCache=fminit\Plugins\.cache
• The PageSizesFile file defines the page sizes for the seven standard page sizes listed in the Page Sizes
popup menu in the Custom Blank Paper and Page Size dialog boxes. For a new custom document, it also
defines the default unit, column gap, and margin settings for each paper size. For more information, see
the instructions in the file.
• FirstRunOpenDoc specifies a document that displays only when you run a FrameMaker product for
the first time. After this document has been displayed once, this setting is reset to have an empty value.
• PluginCache specifies a file used in conjunction with the Plugins folder to track API clients.
• The values for MakerWin specify normal, minimized, and maximized positions. The first value deter-
mines which position to use; its value is 1 for normal, 2 for minimized, or 3 for maximized. The next six
values are pairs of x and y offsets that specify the different window positions; the first pair specify the
minimized position, the second pair specify the maximized position, and the third pair specify the normal
position. The last two values are the normal window width and height.
• The settings for the Paragraph Catalog and Character Catalog (PCatalog and CCatalog) specify first
an x and y value for the location of the catalog. The x value specifies the offset in pixels from the left side
of the screen. The y value specifies the offset in pixels from the top of the screen. Optionally, the width and
height of the catalog, in pixels, appear after the x and y values.
• The rest of the settings specify only an x and y value for the left and top offset of the window or dialog box.
If you open and move one of these windows or dialog boxes, the location is modified in the
[DialogLayout] setting when you exit. This becomes the default location the next time.
FDK clients
The [APIClients] settings list FDK clients (plug-ins) to start when the FrameMaker product starts.
Each client description must be on a separate line.
• Descriptions for clients that are not filters use the following format:
Dash patterns
The [DashPatterns] settings define the eight dash pattern choices that appear in the Dashed Line
Options dialog box. You can edit these settings to replace the standard choices with custom ones:
1=Dash, 8, 6
2=Hidden, 4
3=Longdash, 16, 10
4=Dot, 2, 4
5=Dash-Dot, 12, 6, 2, 6
6=Dash-Dot-Dot, 12, 6, 2, 6, 2, 6
7=Chain, 12, 6, 6, 6
8=Phantom, 20, 6, 6, 6, 6, 6
Each dash pattern contains a label that identifies the dash pattern in the Dashed Line Options dialog box
and a repeating series of dash and gap segment lengths. Dashes and gaps are measured in points. The
following illustration shows a dashed line and its segment description. The line is made up of a 12-point
dash, a 6-point gap, a 6-point dash, and another 6-point gap. This pattern repeats to draw a dashed line of
any length.
Dashed line:
Dash segments: 12, 6, 6, 6
If a dash pattern setting contains an odd number of segment lengths, the last dash value is repeated for the
final gap. For example, the following setting describes a dash pattern with 4-point dashes and 4-point gaps:
2=Hidden, 4
Thermometer colors
A thermometer is a horizontal bar that shows progress during operations that can take some time. One
color, on the left of the bar, represents the percentage of the operation that is complete. Another color, on
the right of the bar, represents the percentage remaining. The thermometer updates as the operation
progresses. The [Thermometer] settings specify colors to use in thermometers as red, green, and blue
(RGB) values. You can change these values to specify different colors.
ThermoDoneColor=255, 0, 255
ThermoRemainingColor=192, 192, 192
• The CreateSummaryOnly setting sets the Create radio buttons in the Compare Documents and
Compare Books dialog boxes. When this setting is On, only a summary document is created. When this
setting is Off, both summary and composite documents are created.
• The MarkInsertedText settings control the standard choice for marking insertions. You can choose
the standard Inserted condition, ConditionInserted; a custom condition, ConditionTag; or
Nothing. Edit the file so the option you want is the only one without a semicolon before it. If you choose
a custom condition for inserted text, specify its tag with the InsertConditionTag setting.
• The MarkDeletedText settings control the standard choice for marking deletions. You can choose the
standard Deleted condition, ConditionDeleted; a custom condition, ConditionTag; or replacement
text, ReplacementText. Edit the file so the option you want is the only one without a semicolon before
it.
• If you choose a custom condition for MarkDeletedText, specify the condition tag in the DeleteCon-
ditionTag setting.
ADOBE FRAMEMAKER 6.0 19
Changing Initialization Files
• If you choose replacement text for the MarkDeletedText setting, add the replacement text as a text
string in the DeleteReplacementText setting (in place of the ^).
AddChangeBars=On
InsertHyperTextLinks=On
ThresholdFactor=75
• The AddChangeBars setting specifies if change bars are added to the composite document.
• The InsertHyperTextLinks setting specifies if hypertext links are added to the summary document.
• The ThresholdFactor setting controls when to mark an entire paragraph or table cell as changed. The
preset value is 75; an entire paragraph is marked as changed if 75 percent or more of the words are changed.
You can increase or decrease this percentage.
Spelling options
The [Spelling] settings in the initialization file define the options for spell-checking and specify which
style of quotation marks to use.
FindUnusualHyphenation=Off
FindUnusualCap=Off
IgnoreSingleCharWords=On
IgnoreAllCaps=On
FindStraightQuotes=On
FindExtraSpaces=On
IgnoreRomanNumerals=Off
IgnoreWordsWithDigits=On
FindTwoInARow=On !,.:;?
IgnoreWordsContaining=On .
FindSpaceBefore=On !%),.:;?]}\xC8\xD3\xD5\xDD
FindSpaceAfter=On $([{\xC7\xD2\xD4\xDC\xE2\xE3
You can change any On setting to Off (and vice versa) and specify different characters in the last four lines.
(For information on entering special characters using hex codes, see “Special characters” on page 4.)
ADOBE FRAMEMAKER 6.0 20
Changing Initialization Files
These values are updated every time you exit, using the current settings in the Spelling Checker Options
dialog box.
Important: If you edit FindTwoInARow, IgnoreWordsContaining, FindSpaceBefore, and
FindSpaceAfter, be sure to leave a space between the On/Off toggle and the character or group of
characters to the right of it.
Below the comments, one of the styles is already set for you. For example, this is how the setting initially
appears in the English versions of FrameMaker products:
;English curved quotes:
SmartQuotes=\xd4\xd5\xd2\xd3
If you want to revise the setting to use one of the other options, you can copy and paste from the comment
the codes for the style you want. (For information on entering special characters using hex codes, see
“Special characters” on page 4.)
Font size
DisplayUsingPrinterMetrics=Off
Sizes=7pt, 8pt, 9pt, 10pt, 11pt, 12pt, 14pt, 18pt, 24pt, 36pt
• The DisplayUsingPrinterMetrics setting determines whether on-screen display uses printer font
metrics or screen font metrics. When printing, printer font metrics are always used to calculate line lengths,
line breaks, and page breaks. However, the default Off value for this setting means that screen font metrics
are used for on-screen display of fonts, which usually results in a better on-screen display but may
introduce a difference between line lengths on-screen and on a printed page.
ADOBE FRAMEMAKER 6.0 21
Changing Initialization Files
If you are trying to position a graphic relative to a character in a line, you should change this setting to On.
This causes printer font metrics to be used when displaying the lines on the screen.
• The Sizes setting defines the values that appear in the Format > Size submenu and in the Size pop-up
menu in the Paragraph Designer and Character Designer. You can edit this line to change the values to any
values between 4 and 400 points. If the line contains more than 10 values, only the first 10 appear in the
menus.
• The Variations and Angles settings define the names of variations and angles that may be encoun-
tered when opening a document from another platform.
• Windows uses values to define font weights and other terms. The Weights settings associate terms from
other platforms with font weights appropriate for Windows. For example, Thin is interpreted as the weight
100.
You can edit these settings if your document has variations, angles, or weights not specified in the default
settings.
Default fonts
Some of the [Fonts] settings define the default fonts for a new document. If the FrameMaker product
needs to remap characters for fonts that are unavailable and you do not have an appropriate font map
specified, it remaps the characters to the default font.
These are the default font settings:
DefaultSize=12
DefaultFamily=Times, Times New Roman, Tms Rmn
DefaultAngle=Regular
DefaultVariation=Regular
DefaultWeight=Regular
MathFamily=Symbol
You can edit any of these settings to use a different font or other characteristic. If you change the font
family, be sure to use a family installed on your system.
ADOBE FRAMEMAKER 6.0 22
Changing Initialization Files
The following settings define the defaults used to map to unknown Asian fonts:
DefaultJapaneseFamily=MS
DefaultKoreanFamily=
DefaultSimplifiedChineseFamily=
DefaultTraditionalChineseFamily=
For information about specifying a font map, see “Mappings for unavailable fonts” on page 24.
Menu fonts
UiCalcFont=MS Sans Serif, 8, 600
This setting in the [Fonts] section tells FrameMaker products what font to use when determining the size
of pop-up menus. You should not change this setting.
This setting defines the font families ignored during spell-checking. When you use the Spelling Checker
command, any text in these font families is ignored.
The AtmFontAutoActivation setting determines whether font sets in Adobe Type Manager Deluxe 4.0
will be automatically activated. This means that if you open a document that uses a font that is installed on
your computer but is not in a font set that’s currently active, the font set will be activated automatically.
The otherwise inactive font is displayed and prints correctly, but it does not appear in font menus.
The AtmFontSubstitution setting determines whether ATM Deluxe will create a stand-in font for one
that is missing by simulating the shape and spacing of the missing font. The simulated font will not be an
exact match but will preserve line breaks and the general look of the uninstalled font. Font substitution
may delay displaying a document on slower computers or if there are many fonts that must be substituted.
ADOBE FRAMEMAKER 6.0 23
Changing Initialization Files
Windows-font is a font family available in Windows. The angle for this font can be either Regular or
Italic, and the weight can be one of the weights defined in the font profile under [Fonts]. You can also
use an asterisk (*) to specify no particular angle or weight.
Frame-font is a font family available on the other platforms. The angle, weight, and variation for this
family can be any of the ones defined in the font profile. If you use an asterisk (*), the FrameMaker product
font will use the angle, weight, or variation from the Windows font.
For example, the setting
HelveticaNarrow, *, *=Helvetica, *, *, Narrow
ADOBE FRAMEMAKER 6.0 24
Changing Initialization Files
assigns the Windows font family Helvetica Narrow to the FrameMaker product font name Helvetica with
the Narrow variation. The two asterisks specify that angles and weights are not affected in this alias.
If you do not have an appropriate alias defined for a Windows font, the default alias is used:
Windows-font *, *=Frame-font *, *, *
You can add more aliases to [WindowsToFrameFontAliases] and change existing ones. Follow the
syntax for any changes you make.
The angles, weights, and variations for these mappings can be any of the ones defined in the font profile
under [Fonts]. You can also use an asterisk (*) to specify no particular angle, weight, or variation.
For example,
Lumina, *, *=Helvetica, *, *, *
Helvetica, *, Light, *=Helvetica, *, Regular, *
Helvetica, *, *, UltraCompressed=Helvetica, *, *, Narrow
If you open a document with unavailable fonts and don’t have substitutes mapped for those fonts, the
FrameMaker product replaces them with the default fonts defined under [Fonts] instead.
Note that the settings under [UnknownToKnownFontMap] map one FrameMaker product font to
another. This is different from [WindowsToFrameFontAliases], which assigns a FrameMaker
product font name to an equivalent Windows font.
FrameMaker products are configured to display menus and commands as described in your user guide and
in online Help. You can choose to display all the menus and commands or a subset of them called quick
menus. You can change both the complete and quick menu configurations by adding, removing, and
rearranging menus and commands, and by adding, changing, or removing command shortcuts. You can
also create a custom menu bar for document windows.
This chapter describes how to switch between quick, complete, and custom menus; write and use a menu
customization file to change the menus and their contents; and change command shortcuts. It also describes
where FrameMaker products look for menu and command configuration files when starting.
The menus.cfg file specifies two menu sets that can appear in the standard menu bar. One set displays all
menus and commands as they’re described in your user guide. These menus are called the complete menus.
The other set displays a subset of the menus and commands—quick menus—if you aren’t using all the
features. For example, the complete File menu contains the Preferences command and the Import and
Utilities submenus, but the quick File menu does not. See “Changing menu configurations” on page 42 and
“Menu and command configuration files” on page 14 for how to work with these menu sets.
The menus.cfg file can also specify if command buttons appear in the upper-right corner of the
document window.
The command definition files include the complete definition of commands. Each command definition
includes a unique identifier, a keyboard shortcut (optional), and a corresponding function code.
The command definition files are:
• fminit\configui\cmds.cfg
This file contains definitions of commands that are the same on all platforms.
• fminit\configui\mathcmds.cfg
This file contains the commands for equations that have platform-independent keyboard shortcuts.
• fminit\configui\wincmds.cfg
This file contains the commands and shortcuts that are specific to the Windows version of FrameMaker
products.
Keep in mind that changing menus and commands will make the interface inconsistent with the standard
interface, so that information in printed documentation and in online Help may no longer be accurate.
2 fminit\configui\mathcmds.cfg
3 fminit\configui\wincmds.cfg
4 fminit\product\menus.cfg
5 The file specified by the ConfigCustomUIFile setting in the initialization file. The default is
fminit\configui\customui.cfg.
The names of these configuration files are specified in the initialization file for the FrameMaker product
(see “Menu and command configuration files” on page 14).
Plug-ins (API clients) can also customize menus and commands. For example, a plug-in can add menus
and commands. When you start a FrameMaker product, menu customizations that you set up override the
customizations specified by plug-ins. For example, if a plug-in adds the command NewItem to the Special
menu, and your menu customization file adds NewItem to the View menu, then NewItem appears on the
View menu and not on the Special menu. For information on plug-in menu customizations, see the
documentation you received with the client.
If you want a menu customization file to be read at startup, set the ConfigCustomUIFile setting in the
initialization file to the path and name of your menu customization file. If you have defined a custom menu
bar and you want it to replace the FrameMaker product’s menu bar, you also change the MenuSet setting
in the initialization file to Custom. Then restart the FrameMaker product.
• Reading a menu customization file interactively
To load a menu customization file when the FrameMaker product is already running, choose View >
Menus > Modify. Then choose a menu customization file and click OK.
ADOBE FRAMEMAKER 6.0 29
Changing Menus and Commands
To remove all customizations you read in interactively, restart your FrameMaker product. If you set up a
menu customization file to be read at startup, you must remove the pathname of your customization file
as the value of the ConfigCustomUIFile setting in the initialization file and then restart the
FrameMaker product.
Where nested angle brackets are required, every left angle bracket must have a corresponding right angle
bracket. To include a right angle bracket as part of a menu or command identifier or label, precede it with
a backslash (\).
• Statements must appear in a particular order.
For example, you must define a menu before adding it to the menu bar or another menu. You must add a
command to a menu before moving the command.
• Each statement begins with a special word that indicates what that statement does.
• Text outside angle brackets is treated as a comment. Don’t include angle brackets in comments.
The rest of this chapter contains many examples of statements. You will find examples of the following
statements:
ShiftCommand Defines a command for a menu item that is chosen while the Shift key is held down
KeySeqLabel Defines a label for the shortcut which appears next to the command name on the menu
Label Defines a label for a menu or command that is visible in the user interface
ADOBE FRAMEMAKER 6.0 30
Changing Menus and Commands
IconBarOn Defines if the buttons from the upper-right corner of the document window are displayed.
Reserved menus
Many of the menus defined in the standard menu files for the FrameMaker product are reserved menus.
The FrameMaker product has intrinsic knowledge about reserved menus; it can refer to these menus
directly by name.
Reserved menus are defined with the ReservedMenu statement. By convention, the names of reserved
menus in the Frame menu configuration file all begin with an exclamation point (!). Some of the reserved
menus in the FrameMaker product menu configuration file are listed in the next two subsections.
Important: To avoid name conflicts with these reserved menus, do not begin any of your custom menu names
with an exclamation point.
Permanent menus
The FrameMaker product relies on the following menus existing. They are all menu bars or are associated
with the Formatting bar. You cannot remove these menus from the menu configuration file. The FrameMaker
product will not work properly without them.
Menu ID Description
Context menus
There are a number of reserved menus that appear when you use the right mouse button to click or drag.
These menus are context-sensitive; they contain menu choices appropriate to the selected object or
location of the click. The default context (shortcut) menu for a particular selection does not contain every
possible command you can do to the selection. If a menu item is not applicable to the selection and the
current state of the product, it will be grayed out. Keyboard shortcuts appear to the right of the commands
on these menus, just as they do in regular menus.
Context menus can also be displayed by pressing Shift+F10. In this case, the menu that appears depends
on whether there is a selected object, an insertion point, or neither.
!DocumentContextMenu The context menu for the document as a whole (no active insertion point and nothing
selected)
!GraphicsContextMenu The context menus for all graphic objects except an anchored frame. The second
menu is for a grouped object.
!MultiGraphicsContextMenu
!QuickBookContextMenu Context menu for a book window when QuickMenus are the current menu set
!StructuredTextContextMenu The context menu for text in a structured text flow in FrameMaker+SGML
!TextLineContextMenu The context menus for a text line. The first menu applies to text lines selected as text.
The second menu applies to text lines selected as graphic objects.
!TextLineGraphicContextMenu
Customizing commands
The commands that appear on the standard menus are defined in the three command configuration files
listed in “Standard configuration files” on page 26. Each menu command corresponds either to a built-in
function or a call to a program that uses the API. The built-in functions are defined by the FrameMaker
product. The definition of a command includes the identifier of the built-in function or program.
ADOBE FRAMEMAKER 6.0 32
Changing Menus and Commands
This section tells you how to change the standard commands, remove them, and add additional commands
to the menus. For information on how to write programs that use the API, see the FDK Programmer’s
Guide, which is included in the Frame Developer’s Kit.
Important: If you want to edit the menus.cfg file using a FrameMaker product, you must first move the
file out of its directory. Then open the file and save it in Text Only format, and return it to its directory. Alter-
natively, you can use a text editor to edit it in its own directory.
<Label New...>
<KeySequence \!fn>
<Definition \x300>
<Mode All>>
You can nest statements in other statements. In the above example, there are four statements nested within
the overall Command statement. Each one of these determines one characteristic of the new command.
The first line creates a command called New. This is the command’s identifier, the name by which the
command will be referenced in other statements. The command identifier must be one word. Notice that
the closing angle bracket (>) for this statement is on the last line.
The second line gives this command a label of New... which is how it will be shown on
the menu.
The third line sets the keyboard shortcut for this command. The \! stands for the Esc key, so the shortcut
consists of three characters: Esc, f, and n.
The fourth line defines the actual function that is called when the command is chosen on the menu. This
function is specified by its function code number, called an f-code. The f-codes for all the built-in functions
are listed in a header file, fcodes.h, which is part of the Frame Developer’s Kit. This file is located in the
include directory under the FDK installation directory.
The last line means the command is both a FrameMath command and a regular Frame command.
Renaming a command
You can change the label of a command that appears on a menu. You can change the label everywhere it
appears, or in only one of several places.
To rename a command everywhere it appears, use the following statement:
<Modify ItemID <Label NewLabel>>
ItemID is the identifier of the command you want to rename. NewLabel is the new label.
ADOBE FRAMEMAKER 6.0 33
Changing Menus and Commands
For example, to rename the New command to Create New, use the following statement:
<Modify New <Label Create New...>>
To rename a command in only one place, define a new command that duplicates the function of the old
one (using the same key sequence, definition, and mode), but use a different label. Then put the new
command on the menu in place of the old one.
<KeySequence \!ea>
<Definition \x327>
<Mode All>>
The SelectAll command acts as a placeholder on the menu for the group of commands: Flow, Frame, and
Page, all of which have the same command definition.
To define an Japanese-only command, use the <AsianFonts Yes> statement. For example, the
following statements define the Format > Document > Combined Fonts command:
<Command CombinedFonts
<Label Combined Fonts...>
<KeySequence \!oco>
<Definition \x338>
<AsianFonts Yes>
<Mode All>>
The <AsianFonts No> statement has the same effect as omitting the statement. If the AsianFonts
statement is set to No or is not specified, the command applies to all configurations.
Removing a command
You can remove commands from a menu. Removing a command from a menu doesn’t remove the actual
command or its associated keyboard shortcut from FrameMaker products. Only the menu changes.
Removing a command also doesn’t affect other commands, even though they may seem to be related. For
example, if you remove the Group command, the Ungroup command doesn’t disappear.
To remove a command, use the following statement:
<Remove ItemID <Menu MenuID>>
ItemID is the identifier of the command that you’re removing. MenuID is the identifier of the menu
containing the item you want to remove.
If a command appears on more than one menu and you want to remove it from each menu, use one
Remove statement for each menu. For instance, to remove the Reshape command from both the quick and
complete Graphics menus, use the following statements:
<Remove GraphicsReshape <Menu GraphicsMenu>>
A mnemonic shortcut is an underlined character in a command label. When the menu is open, you can
press the underlined key to execute the command. For example, when the File menu is open, you can press
x to choose the Exit command.
To specify a mnemonic shortcut for a command, find the statement in which the command’s label is
specified and place an ampersand before the letter of the label which you wish to underline.
ADOBE FRAMEMAKER 6.0 35
Changing Menus and Commands
For example, the identifier for the Exit command on the File menu is TerminateMaker. In the cmds.cfg
file this command is given the label Quit. This value is overridden in the wincmds.cfg file with the
following statement (notice the & before the x):
<Modify TerminateMaker <Label E&xit>>
The mnemonic shortcuts will not be displayed unless the AutoMnemoniseMenus setting in the product
initialization file is set to On (see “Menu preferences” on page 10).
• Adding key sequences
You can add a key sequence for any command, even if it also has a mnemonic shortcut. You add a key
sequence for a command with a KeySequence statement. This statement can be included within the
command definition statement or in a Modify statement:
<Modify CommandID < KeySequence Sequence>>
The keys in the sequence can be any key on the keyboard. Most keys are represented in the sequence simply
by their character. For instance, if you wanted a key sequence to consist of the A key followed by the 3 key,
the sequence would be A3.
You represent some keys in the key sequence in a special way. You use symbols for modifier keys—for
example, + for Shift, ^ for Control, and ~ for Alt. The Esc key is used quite often and has a special abbre-
viation of a backslash followed by an exclamation point: \!
You can add the shortcut Control-a Control-c for the Copy command with this statement:
<Modify Copy <KeySequence ^a^c>>
If you want to use these special characters as actual characters in a key sequence, you precede them with a
backslash (\). For instance, a + in a key sequence means the Shift key, while a \+ means the plus key. A key
sequence of \!\+c means the Esc key, followed by the + key, followed by the c key. A key sequence of \!+c
means the Esc key, followed by the Shift and the c keys.
You represent other special keys with keysyms. A keysym is a keyword that denotes a special key on the
keyboard. Keysyms are always preceded by a forward slash (/). Valid keysyms are Up, Down, Left, Right,
Home, End, PgUp, PgDn, Return, Tab, BkSp, Space, Delete, Insert, F1 through F16, and Escape. For
instance, to include the Tab key as part of a key sequence, you use /Tab.
You might also want the new shortcut to appear on the menu next to the command label, as a reminder to
the user. You do this with a KeySeqLabel statement. The following statement adds a useful reminder for the
Copy shortcut:
<Modify Copy <KeySeqLabel Ctrl+a Ctrl+c>>
If a command does not have a KeySeqLabel statement, the command will be displayed on the menu with
no shortcut. This does not mean the shortcut does not exist; it just means the shortcut is not displayed on
the menu.
A command can have more than one shortcut. Adding a shortcut for a command or changing the shortcut
label that appears on a menu doesn’t disable other shortcuts for a command. As long as a unique shortcut
is defined in a configuration or menu customization file, it will work.
ADOBE FRAMEMAKER 6.0 36
Changing Menus and Commands
If you set ConfigWarnKbdRedundant to On in the product initialization file (see “Menu preferences” on
page 10), you will see warning messages when you load a customization file that contains shortcut defini-
tions for commands that already have shortcuts defined for them. The warning messages appear in the
console window.
To change the label that appears for a shortcut on a menu without changing the shortcut itself, use the
following statement:
<Modify CommandID <KeySeqLabel Label>>
Label is the label you want to appear next to the command on a menu. The label changes everywhere the
command appears on a menu.
Customizing menus
MenuID is the identifier used in other statements to refer to the menu. MenuLabel is the label that appears
in the interface.
The menu identifier must be unique. Make sure your menu identifier doesn’t match an existing menu or
command identifier. You’ll find it easier to read the menu customization file later if your menu identifier
uses Menu as a suffix. Also, you’ll type the menu identifier whenever you add menu items to the menu, so
keep the identifier short and easy to type.
Then add the menus that you want to appear on your menu bar. You can use existing menus or define your
own. If you define your own, you must define the menu first before adding it to your custom menu bar.
ADOBE FRAMEMAKER 6.0 37
Changing Menus and Commands
MenuID is the identifier of the menu you are adding. DestinationMenuID identifies the menu bar or
menu to which you’re adding the other menu.
For example, to define and add a submenu labeled Other Commands to the Graphics menu, use the
following statements:
<Menu ExtraGraphicsCommands <Label Other Commands>>
<Add ExtraGraphicsCommands <Menu GraphicsMenu>>
The menu bar is defined as a menu, so you add a menu to the menu bar the same way you add a submenu
to an existing menu. When you add a menu to the menu bar, it appears after the existing menus (except for
the Help menu, which is always at the right of the menu bar). When you add a submenu to an existing
menu, it appears at the end of the menu.
After you add a menu, you can move it. For details, see “Rearranging menu items” on page 40.
CommandID is the identifier of the command you’re adding. MenuID is the identifier of the menu to which
you want to add the command.
For example, to add the Find/Change command to the Special menu, use the following statement:
<Add Find/Change <Menu SpecialMenu>>
When you add a command, it appears at the bottom of the menu. After you add a command, you can move
it. For details, see “Rearranging menu items” on page 40. You can’t add a command directly to the menu
bar. The command must be on a menu.
You can also specify a Shift command—a command that replaces another command when you display the
menu while holding down the Shift key. For example, when you hold down Shift and pull down the File
menu, the Save command appears as Save All Open Files.
To add a Shift command to a menu, use the following statement:
<ShiftCommand UnshiftedCommand ShiftedCommand>
ADOBE FRAMEMAKER 6.0 38
Changing Menus and Commands
For information on hypertext commands, see “Chapter 18: Hypertext and View-Only Documents” in the
FrameMaker User Guide.
MenuID is the identifier of the menu to which you want to add a separator, and n is the separator number
from 1 to 5. You cannot add duplicate separators to the same menu; each one must have a unique name.
You can define more separators by defining a command which is defined with the F12 function code. For
example:
<Command Separator6 <Definition \xF12>>
If you add a separator to a menu bar, the separator will be invisible. Separators are used on the menu bars
to define menu groupings for OLE 2 integration with other applications (see “Separator lines on menu
bars” on page 39).
MenuID is the identifier of the menu from which you want to remove the separator, and n is the separator
number.
Before removing a separator line from a menu bar, read “Separator lines on menu bars” on page 39.
ADOBE FRAMEMAKER 6.0 39
Changing Menus and Commands
When menu merging occurs, the menus in the File, Container, and Window groups are unchanged. The
menus in the Edit, Object, and Help groups are replaced with the application’s corresponding menus.
When you are done editing the object and deselect it, the replaced menus will revert to the original menus.
There are two other menu bars in the FrameMaker products that make use of this feature. They are the
Quick menu bar (!QuickMakerMainMenu) and the View-Only menu bar (!ViewOnlyMainMenu).
If a menu bar does not have these separators defined, menu merging will not happen when an embedded
object is double-clicked. If you modify these menu bars, be careful not to change these groupings. If you
define your own custom menu bar, menu merging will not take place unless you use separators to define
these logical groups.
The order of the Add statements for a menu bar determines which menus are in which logical groups.
Menus added in statements before the first separator is added belong in the FIle group. Menus added
between the first and second separator statements belong to the Edit group. Menus added between the
second and third separator statements belong to the Container group, and so forth.
In the menus.cfg file, the order of the statements which add items to the !MakerMainMenu bar determines
the logical groupings shown above. The statements which add the menus and separators to this menu bar are
interspersed with other Add statements that add menu items to the menus and their submenus. The lines that
define the !MakerMainMenu menu bar are shown below, without the intervening Add statements for the
other menus.
ADOBE FRAMEMAKER 6.0 40
Changing Menus and Commands
In the above statements, MenuID1 is the identifier of the menu that contains the item (menu or command)
you want to move. ItemID is the identifier of the item you want to move. MenuID2 is the identifier of the
menu to which you to want to move the item.
If you are moving an item to a different place on the same menu, MenuID1 and MenuID2 will be the same
identifier. For example, to move the Footnote command to the top of the Special menu, use the following
statement:
<Order SpecialMenu.Footnote <First SpecialMenu>>
ADOBE FRAMEMAKER 6.0 41
Changing Menus and Commands
To put the Special menu last on the menu bar (for complete menus), use the following statement:
<Order !MakerMainMenu.SpecialMenu <Last !MakerMainMenu>>
To put one item before another item on a menu, use the following statement:
<Order MenuID1.ItemID1 <Before MenuID2.ItemID2>>
To put one item after another item on a menu, use the following statement:
<Order MenuID1.ItemID1 <After MenuID2.ItemID2>>
In the above statements, MenuID1 is the identifier of the menu that contains the item (menu or command)
you want to move. ItemID1 is the identifier of the item you want to move. MenuID2 is the identifier of
the menu to which you to want to move the item. ItemID2 is the identifier of the item before or after
which you want to place ItemID1.
For example, to put the Thesaurus command above the Find/Change command in the Edit menu, use the
following statement:
<Order EditMenu.Thesaurus <Before EditMenu.Find/Change>>
To put the Graphics menu after the Format menu (for complete menus), use the following statement:
<Order !MakerMainMenu.GraphicsMenu <After !MakerMainMenu.FormatMenu>>
Renaming a menu
You can rename a menu. This changes the label of the menu; it does not change the menu’s identifier. To
rename a menu, use the following statement:
<Modify MenuID <Label NewLabel>>
MenuID is the identifier of the menu you want to rename. NewLabel is the new label for the menu. For
example, to rename the Page Layout submenu on the Format menu to Page Design, use the following
statement:
<Modify PageLayoutMenu <Label Page Design>>
ItemID is the identifier of the item that you’re removing. MenuID is the identifier of the menu containing
the item you want to remove.
If a menu command appears more than once and you want to remove it from each instance, use separate
Remove statements. For example, to remove the Special menu from both the quick and complete menus,
use the following statements:
<Remove SpecialMenu <Menu !MakerMainMenu>>
<Remove QuickSpecialMenu <Menu !QuickMakerMainMenu>>
To remove the Reshape command from the Graphics menu in the quick menus, use the following
statement:
<Remove GraphicsReshape <Menu QuickGraphicsMenu>>
To remove the Alignment and Spacing pop-up menus and the tab wells, use the following statement:
<Remove !ShowRulerAlignmentSpacingAndTabs <Menu !RulerControlMenu>>
To remove the buttons from the upper-right corner of the document window, use the following statement:
<IconBarOn No>