CMTools

version 3.0
©Éric de la Musse (edlm10@pobox.com) - 9/97
Translation from French documentation by Turadg Aleahmad

I - Introduction

CMTools is a plug-in that extends the Contextual Menu of Mac OS 8. In programs that support the Contextual Menu, such as the Finder, it provides the following functions:

* Launch applications, files and folders
* Create aliases directly in your designated folders.
* Decompress files.
* Compress any items (documents, folders, applications, etc...).
* Copy files and folders.
* Move files and folders.
* Change the creator and type codes of files.
* Lock/Unlock files.
* Open files directly with your preferred applications.
* Access the Application Menu via the Contextual Menu

You organize the menus as it suits you, by creating and organizing files and aliases in a special folder in the Finder.

II - Minimal configuration and installation

The minimal configuration to use CMTools is :

- Mac OS 8
- A PowerPC Macintosh (required for Contextual Menus plug-ins).
- The library "SOMobjects(TM) for Mac OS" must be installed in your Extensions folder.

To install CMTools launch "CMTools Installer & Helper" application and follow its instructions.

III - Organization of files and basic principles

After the first restart after its installation, CMTools creates a folder named "CMTools Configuration" (located in the folder "Contextual Menu Items" of "System Folder").

The folder "CMTools Configuration" is itself organized in 14 folders, each being dedicated to a function of CMTools:

* "Launcher": for aliases of items that you want to open using the Contextual Menu.

* "Make Alias in" : for aliases of folders or disks in which you want to create aliases directly.

* "Copy to" : for aliases of folders or disks in which you want to copy files and folders directly.

* "Move to" : for aliases of folders or disks in which you want to move files and folders directly.

* "Decompress" : for the alias of the application that you want to decompress selected files and folders with (StuffIt Expander for example).

* "Compress": for the alias of the application that you want to compress selected files and folders with (DropStuff for example).

* "Open Using" : for aliases of applications with which you want to open selected files.

* "Set Creator to" : for files whose creator codes you wish to have applied to selected files.

* "Set Type to" : for files whose type codes you wish to have applied to selected files.

* "Set Creator & Type to" : for files whose type and creator codes you wish to have applied simultaneously to selected files.

* "Lock" : to enable the lock menu item.

* "Unlock" : to enable the unlock menu item.

* "Refresh menus" : to enable the menu item to rebuild CMTool's menus.

* "Application menu" : to enable the Application Menu in the Contextual Menu.

Don't change the names of these folders, except to disable their functionality or change their order in the menu as described in section 4.2. CMTools would then be unable to find them and would create new folders automatically.

These folders are divided into the following categories:

1) Folders which are used to build yours menus. Items placed in these folders modify the corresponding menu in CMTools (see below). These include: Launcher, Make Alias in, Copy to, Move to, Open using, Set Creator to, Set Type to and Set Creator & Type to.

2) Folders that exist only to toggle some features. The content of these folders is ignored. These include: Lock, Unlock, Refresh menus and Application menu.

3) Finally there are the Decompress and Compress folders which should each contain an alias of the application you use to decompress and compress files, respectively.

3.1 Configuring folders

You construct the menus by organizing the content of the folders. Each element created in a folder corresponds to an item in the menu.

Except for hierarchical menus for which you create sub-folders, the principle is to place in the different folders only the aliases of the elements that you want to see in your menus.

The rules of the creation of these menus are summarized below (I hope the screen capture below will make them clear) :

- To create a menu item : add an alias to the corresponding folder.

- To create a hierarchical menu : create a folder (not an alias) in the desired level

- To create a separator in your menus : insert at the end of the name of any item the dash character '-'. It doesn't matter whether the item is an alias or folders; it will appear in the menu as a separator.

- To rename a menu item or hierarchical menu : simply rename the corresponding item. See 4.1 for information on sorting items by renaming them.

- To remove an item : throw it in the Trash...

Note that there is no need to restart for CMTools to account for your modifications. Additions and removals appear in the menus automatically and instantaneously. If you've only renamed an existing item, you must use "Refresh menus" for the changes to appear.

By default, CMTools doesn't resolve folder aliases, meaning that an alias to a folder will not have its contents displayed in the hierarchy. To enable this, append a "+" to the end of folder alias name. Keep in mind that this takes more calculation and extensive use will slow your computer noticeably.

For example, for a setup like this (example shown is the Launcher folder of the author) :

The CMTools menu looks like this :

IV - Description of the folders of CMTools and the behavior of the corresponding menus

4.1 Generalities applicable to all folders

You can sort items inside any folder by renaming them. CMTools displays items in its menus in alphabetical order.

To adjust the order, put numbers at the beginning of the name. CMTools will not display them in the item name.

4.2 The "CMTools configuration "folder

4.2.1 You can deactivate at any time any function of CMTools.

There are two ways to do this :

- by inserting a dash '-' at the end of the name of any folder you render inoperable its corresponding function.

- by leaving a folder empty you likewise deactivate the function (except for the folders "Make Alias in", "Copy to", "Move to").

Remember that you can deactivate any functions from the helper application.

4.2.2 As for any others folders you can set the order of CMTool's menus by prefixing folder names with non-alphabetic characters. Numbers are best (see 4.1.2). For example, if you rename "Open Using" to "1Open Using" the corresponding menu will be displayed first.

4.3.3 You can create menu separators by creating folders with a '-' suffix. If they don't have the names of a configuration folder, they will appear in alphabetical order as a separator.

4.3 The "Launcher" folder

This folder can contain aliases point to any item (files, folders, disks, printers, etc.) Of course, you can also use true folders to create hierarchical menus.

When you select in the Contextual Menu one of the elements in this folders (and possibly sub-folders) CMTools commands the Finder to open it. If it was an application it will open, if it was a document the Finder will open it with the application that created it, if it was a folder the Finder will display it to the screen, etc...

In short, it is a classic launcher... ;-)

The Launcher isn't displayed by CMTools if you open the Contextual Menu while icons are selected in the Finder. You must click on a blank portion of the screen in order to see the Launcher.

At the end of each hierarchical menu, CMTools displays its parent menu's title. Without this, it would be impossible to select a folder that has a submenu.

4.4 The "Make Alias in" folder

This folder should contain only aliases to disks or folders : to create an alias in a file doesn't make any sense. Of course, you can also place here true folders to create hierarchical menus.

You can't disable the function "Make Alias in" other than renaming the folder "Make Alias in" to "Make Alias in-". Leaving the folders empty is not enough to disable it.

When you choose in the Contextual Menu an item in this folder (and possibly sub-folder) CMTools commands the Finder to create an alias of the selected icons *and* put it in the folder or disk pointed to by the alias.

4.5 The "Copy to" and "Move to" folders

These folders should contain only aliases pointing to disks or folders : to copy or move a file into a file doesn't make any sense. Of course, you can also place here true folders to create hierarchical menus.

The only way to disable these functions is to append a hyphen to the end of their names. (eg. rename "Copy to" to "Copy to-"). Leaving them empty is not enough to disable them.

When you choose in the Contextual Menu an item in these folders (and possibly their sub-folders) CMTools commands the Finder to copy (or move) the selected icons to the folder or disk pointed to by the alias.

4.6 The "Decompress" and "Compress" folders

These folders should each contain only one alias: an alias pointing to the application you use to decompression/compress you files and folders.

When you choose in the Contextual Menu the item "Decompress"/"Compress" CMTools opens the corresponding application and sends it the selected icons. StuffIt Expander and DropStuff fill this task very well, but you can use any program you like.

Note that the item "Decompress" only appears in the Contextual Menu if all of the selected icons were created by StuffIt or have one of the following suffixes: hqx, sit, sea, cpt, bin, gz, uu, tar, zip, arc, pkg, arj and Z.

You can get around this by placing an alias of your decompression application in the folder "Open Using" since this function opens anything.

4.7 The "Open Using" folder

This folder should contain only aliases pointing to applications. Of course, you can also place here true folders to create hierarchical menus.

When you choose in the Contextual Menu an item in this folder (and possibly sub-folder) CMTools launches the corresponding application and commands it to open the selected icons.

4.8 The "Set Creator to", "Set Type to", and "Set Type & Creator to" folders

If you don't know what these phrases mean, don't use them. (To deactivate these functions, see above.)

These folders should only contain the following things :

- for "Set Creator to" : aliases to applications.
- for "Set Type to" : aliases documents.
- for "Set Type & Creator to" : aliases to documents.

Of course, you can also place here true folders to create hierarchical menus.

When you choose from the Contextual Menu an item in this folder (and possibly sub-folders) CMTools modifies the creator and/or type codes of the files selected by replacing them with those of the files pointed to by the corresponding alias.

4.9 The "Application menu", Refresh menus", "Lock" and "Unlock" folders

These folders must be left empty since they only enable/disable corresponding functions in CMTools.

V The CMTools helper application

With this application you can install and update CMTools and set options. These options are:

5.1 Rebuild CMTools' menus automatically or not.

If this option is on CMTools rebuild its menus when folders' modification date have changed. Since CMTools verify this condition each time contextual menus are activated it slows response time. Note also that renaming items doesn't change modifications date so these modifications are not account by CMTools, you must rebuild CMTools' menus manually in this case.

It is recommended that you leave this option unchecked and that you rebuild CMTools' menus manually after your modifications.

5.2 Show all applications in Open using menu or not.

By default CMTools doesn't display all items in Open using folder but only applications which can open the selection. If you activate this option CMTools' will display all items in the Open using folder whatever the selection.

5.4 Show applications in Open using menu or not.

If this option is on CMTools will add running applications to the Open using menu. Note that CMTools displays either all applications or only applications that can open the selection depending how you have set preceding option (5.2).

5.5 Enable and disable functions.

VI Answers to Frequently Asked Questions (FAQ) regarding CMTools

6.1 Installation problems

6.1.1 - Why isn't CMTools working on my System?

Verify these:

- you must have a PowerPC processor (68k machines don't support Contextual Menus)
- CMTools must be in the "Contextual Menu Items" folder (not in the "Extensions" folder)
- "SOMobjects for Mac OS" must be in your "Extensions" folder

If you have QuicKeys Toolbox installed you must remove it since it incompatible with Contextual Menus.

6.2 The organization of the menus, hierarchical menus and menu items

6.2.1 - I created a folder but it is just a simple menu item instead of hierarchical. Why?

Empty folders do not create hierarchical menus; they must contain at least one item to create a sub-menu.

6.3 The decompression of files

6.3.1 - Why doesn't CMTools show all the items that I put in the "Decompress" or "Compress" folders?

These folders are an exception; they can contain only one alias which must point to the application that you use to decompress/compress your files. Any other items won't show. In theory, if you place multiple aliases in this folder, it will use the first one.

6.4 The creation of aliases directly in certain folders

6.4.1 - Why, even though I didn't put an alias of the desktop in "Make Alias in", does CMTools continue to show the desktop in the "Make Alias in" menu? (likewise for "Copy to" or "Move to")

Because it is not possible to create an alias pointing to the desktop, CMTools creates it automatically. The only way to disable "Make Alias in", "Copy to" and "Move to" is by using the technique described in 4.1.

6.5 Various

6.5.1 - Why can't I use the CMTools Launcher anywhere besides the Finder?

Contextual Menus only appear in programs that are written to support them. The Finder is one such program. More will appear as developers make use of Mac OS 8.

6.5.2 - Why don't the functions of CMTools always appear in the menus?

First of all, since it is a contextual menu it is normal that some functions appear only if the context renders them applicable. For example, when the Finder is not active (in the foreground) you won't be able to create an alias. In the same way, if no selected file doesn't include an acceptable suffix (see 4.6) Decompress is not available. Etc, etc...

The Launcher and Application menus are only available if nothing is selected. When something is selected others functions are available as applicable.

6.5.3 - How does CMTools perform the tasks in its menus?

The majority of CMTool's command are delegated to the Finder by intermediary Apple Events.

6.5.4 - If I put an alias to a folder in one of CMTools' folders, it only displays the alias name. Why doesn't it show the folder's contents like PopupFolder does?

By default, CMTools does not show the contents because it slows the computer. This can be enabled on a folder by folder basis by appending the "+" character to the end of the name of a folder alias.

6.5.5 - Why can't CMTools show the contents of the folder on which I control-click?

The author doesn't want to implement this feature, in part because of the reasons described in 6.5.4.

This functionality is already available in FinderPop. It extends the Contextual Menu to display folder contents. CMTools and FinderPop are complementary and can be run at the same time.

6.5.6 - Why does the "Move to" command copy if I try move a selection from one volume to another?

Because this task is performed by the Finder. To understand this, drag a file from one volume to another volume.

VII Distribution and statute of CMTools

CMTools is distributed as freeware. You can use it freely, but the author reserves all other rights on the program.

The dispersion of the program is free, and even encouraged, on the condition that no counterpart, and notably financial, is not demanded other than the price of support.

CMTools can be downloaded from:

http://w3.ime.net/~elf66/

http://www.pobox.com/~edlm10/

http://plaza.v-wave.com/aaaj/CMT.html

http://interdesign.ca/cmcentral/software/cmtools.html

http://www.macnn.com/mirror.shtml

VIII Contact the author

You can contact the author at these addresses :

E-mail (preferred) : edlm10@pobox.com

Postal address :
Éric de la Musse
8, rue de l'Église
75015 Paris
France

The author will receive with pleasure all suggestions, bug reports and even a simple word for him saying that you use his program.

The author expresses his gratitude to the whole ensemble of beta testers, who will forgive me if I don't mention their names on account of their number, having participating in development of this program. Their devotion is always greatly appreciated. The author thanks Turadg Aleahmad in particular for translating this documentation.

IX Known incompatibilities

Since CMTools requires a scriptable Finder, it cannot run with At Ease.

There have been reports of difficulty with the following programs:
- Hotline Doubler
- QuicKeys ToolBox (incompatible with all Contextual Menu plug-ins)

X Version history

3.0 (9/8/97) New features and improvements:
* An installer and helper application.
* Ability to toggle the following features:
- rebuilding menus automatically
- displaying select applications in Open using menu
- appending running applications to the Open using menu
- displaying background-only applications
* Applications are sorted alphabetically in the Applications menu
* Lock/Unlock files

2.2 (8/27/97) New features and improvements:
* Access to the Application Menu in the Contextual Menu
* Items in the Open Using folder display only if they can open the selection
* Numeric prefixes on folder names are not displayed in the corresponding menu (see 4.1)
* Menu separator implementation (see 4.3.3)

2.0.1 (8/16/97) Bug fixed:
* a bug which might prevent mounting disk.

2.0 (8/15/97) New features and improvements:
* Appending "+" to the name of a folder alias will enable display of its contents in the menus.
* You can put an alias of the selection directly in the CMTool's hierarchy.
* Launcher sub-menus contain an item that opens their parent menu's folder.
* Decompress works on files that have the StuffIt creator code, regardless of suffix.
* CMTools no longer displays multiple menu separators together.
* Alias files are resolved quietly.
* Printers are treated differently than files or folders.
Bugs fixed:
* A memory leak which could cause a crash (please, upgrade).

1.1 (7/27/97) New features:
* You can control the order CMTool's menus.
* "Copy to" and "Move to" the desktop.
* CMTools can be used with CM-savvy applications other than the Finder.
Bugs fixed:
* Suffix checking for compressed files was case sensitive.
* CMTool's fell into MacsBug if EvenBetterBusError was installed.
* Certain applications refused to open the documents that CMTools sent them.

1.0 (7/23/97) First public release.


Original file name: Read Me - converted on Thursday, 17 February 2000, 18:14

This page was created using TextToHTML. TextToHTML is a free software for Macintosh and is (c) 1995,1996 by Kris Coppieters