Last edit: 09-11-02 Graham Wideman |
FrameMaker |
FrameMaker MIFBrowse Article created: 2000-01-15 |
2000-01: Much can be learned about Frame document structure and the objects within by examining documents saved in MIF format. To browse MIFs more easily I wrote this little application.
2003-09 Update: Little did I realize that I and others would still find this useful after all this time. A couple of modest features have been added, see the download table below.
The above screenshot pretty much says most of what there is to know. You load in a MIF file, and MIFBrowser presents it in both tree and text forms. While navigating in either you may sync the other view.
Several kinds of uses come to mind:
Date | Version | Download | Description | Outstanding Issues |
2003-09-25 | 0.182 | mifb0182.zip | Zip file containing MIF
Browse for W95 through WinXP. Added features:
|
|
2001-11-22 | 0.160 |
mifb0160.zip 300K |
Zip file containing MIF
Browse for W95 through WinXP. Added features:
|
|
2000-03-20 | 0.150 | Not avail | Zip file containing MIF
Browse for W95/98 and NT 4. Added Features:
|
MIF Parser does not know about the define( ) and include( ) statements, mainly because I don't have a working sample. If someone would like to send me one, I'll incorporate that feature. |
2000-01-18 | 0.121 | Not avail | Zip file containing MIF
Browse for W95/98 and NT 4. Added Features:
|
|
2000-01-16 | 0.100 | Not avail | Initial release. Turns out that W95/98 native memo control imposes unusably small file-size limit (doh!), so this version was usable only on NT. | |
__________ |
1. Create a directory somewhere for it, put the zip file there and unzip. Choose a directory to which the application will be able to write (it keeps track of things like window size and position in an INI file in its home directory).
2. OK, it's now installed :-). No special installation is required, it is a single executable and doesn't use the registry so it's easily uninstalled by just deleting it.
3. Run it by clicking on MIFBrowse.exe in Windows Explorer. If you are enthusiastic you can later create a shortcut and or Start Menu item for it using the usual Windows methods.
I suggest trying it on a smallish MIF first, to get the hang of it. Depending on the speed and memory capacity of your PC, it could slow down on larger MIFs.
Verbose Nodes/"Peek Inside"
The only feature of significant unobviousness is the "Peek Inside" feature which adds some identifying information to many of the treenodes in order for you to see whether this is the object you want to open. In the screenshot above you can see that each Tbl and Page node surfaces things like the table caption or page type and name. This way you don't have to open each node to see what's inside. This is probably the most important feature in making a MIF more navigatable.
The particulars of which attributes are surfaced is controlled by a file called MIFBrowse_NodeInfo.ini. The default file included in the download includes comments and examples which you can modify if you wish.
You can turn off the display of this extra info using the Verbose Nodes checkbox, in which case the treenodes become much more similar to the MIF text.
No nodes are added or removed via the Peek Inside feature, it merely displays extra info for particular nodes.
Reload
In some scenarios, you'll be wanting to inspect the contents of a particular MIF file over and over again, as you perhaps generate new versions of that file with a program you are developing, or make incremental changes in FrameMaker. To quickly load the same file into MIFBrowse, click the Reload button.
Browse Several Files
Although MIFBrowse can only open one file at a time, you can run several instances of MIFBrowse to achieve pretty much the same effect. Note that when quitting, MIFBrowse saves a few settings in MIFBrowse.ini. That file will reflect whichever instance of MIFBrowse last quit.
Range-of-Lines
Added in Version 0.181: The status bar shows the range of lines that correspond to the node selected in the tree view. Useful scenario: with most nodes closed, select high level nodes, and by watching the line-range indicator you can tell which nodes contain a large amount of content.
As of 2009, I haven't used FrameMaker in five years... so this tool is really just here in case anyone can still make use of it.
Written in Borland Delphi 5 (and recompiled in 6), with several fruits of the global developer community which supports this environment: