Thoughtful, detailed coverage of the Mac, iPhone, and iPad, plus the TidBITS Content Network for Apple consultants.

The fmnu Template

The System 7 Finder has been completely rewritten in C++, so none of the old ways to customize the Finder with ResEdit work anymore. There are, however, a couple of things you can do with ResEdit in the new Finder, too. The menus are stored in resources of type fmnu (they include quite a bit more information than would fit in the regular MENU resource type) and here is how you can create a template to edit them. (ADAM: If you're busy like me or lazy, you won't want to do this. Therefore, I'm including a copy of the fmnu template with this issue. Just open it with ResEdit, open the ResEdit Preferences file in the Preferences folder in your System Folder, copy the fmnu resource, and paste it into the ResEdit Preferences file. Close both and enjoy!) Use ResEdit (preferably 2.1.1, but it should work with older versions) to modify the ResEdit Preferences file by adding a new resource of type TMPL. Create 15 new fields in the list and enter the following values for "Label" and "Type":

  Label         Type     Comment
  Visible       DWRD     1=Menu is visible in Menubar; 0=invisible
  Item Count    DWRD     the number of items in the menu plus 1
  ???           DWRD     ???
  Menu Number   DWRD     the resource ID of the fmnu
  ???           DWRD     ???
  ???           DWRD     ???
  Title         ESTR     title of menu (padded to an even length)
  *****         LSTB     begin of item list
  AppleEvent    TNAM     corresponding AppleEvent for this item
  ???           DBYT     ???
  ???           DBYT     ???
  Cmd Key       CHAR     keyboard equivalent of command
  ???           DBYT     ???
  Item Text     ESTR     text of item
  *****         LSTE     end of item list

Please note, that a "???" indicates that I simply don't know what these fields contain (maybe they will one day be documented by Apple). Once you've entered this list, close the TMPL resource you've just created and change its name to fmnu using the Get Resource Info... command. Finally close and save the ResEdit Preferences file. You can now edit the Finder's menus and do other neat things.

While the above technique actually gives you the same freedom of customization that you already had in the System 6 days, you can do a lot more with the new fmnu resources:

For instance, the fmnu resource type is not position-dependent anymore! This means that you can actually completely rearrange the menus in the Finder. All you need to do is make sure that you copy all the information stored in the various fields of an item to its new destination (copy and paste can be a lot of help here!). You can even create your own menu and move commands from other menus to the new one!


Make friends and influence people by sponsoring TidBITS!
Put your company and products in front of tens of thousands of
savvy, committed Apple users who actually buy stuff.
More information: <http://tidbits.com/advertising.html>