Command droplets are small standalone applications supporting OnMyCommand command description format. Example droplets are distributed with OnMyCommand 1.6 or later. You can use OMCEdit or DropletBuilder to build OMC droplet application.
You may think of a command droplet as a GUI for CLI commands. It is not the first or the only GUI wrapper available for Mac OS X. The advantages of OMC droplet over the "friendly competition"* are:


* We call it "friendly competition" because most of similar projects are non-commercial and free. Kudos to their authors.

Usage and Redistribution

Starting with version 1.7 the usage and distribution license was changed to encourage development of droplets with OMC. The license is as follows: You are free to create, use and redistribute command droplets for any purpose, including commecial, as long as you give proper credit and not misrepresent the origin of the software.


The Anatomy of a Droplet Bundle

OMCEdit provides easy one click droplet creation and in most cases you are not going to need the information presented below. However, if you are curious how things work or would like to do it by hand, or you need to fine tune your droplet, please read on.
The structure of the droplet bundle is pictured below. For educational purposes let's assume we want to create an application named "MyGreatDroplet". You may use "MasterDroplet.droplet" as a starting point (in "Example Droplets" folder). Use "DropletBuilder" to upgrade the ".droplet" stub to full application. Save it as MyGreatDroplet.app. Then control-click on it and choose "Show Package Contents". You will see item hierarchy like this:

  • Info.plist - You need to modify several properties in this file. Use text editor or "Property List Editor" if you have developer tools installed. What you need to change:
     - CFBundleIdentifier: change from com.abracode.MasterDroplet to com.abracode.MyGreatDroplet or something unique. This is step is required for proper bundle identification by the OS. Needed also for saving preferences.
     - CFBundleName: change from MasterDroplet to MyGreatDroplet. This is the application name showing in menu bar when you launch it.
     - optionally you may also want to change strings for keys: CFBundleGetInfoString and CFBundleShortVersionString
     - CFBundleDocumentTypes: this is the list of file types and extensions which your application can open and accepts on drag. The default setting is to allow opening of any type of file. Ideally, you may want to match those values with ACTIVATION_EXTENSIONS and ACTIVATION_FILE_TYPES in command description. You do not need it at all if the applet does not work with files.
  • CommandDroplet - The executable binary. You do not need to touch it.
  • omc_dialog_control - Tool for nib dialog controls. Comes with standard OMC droplet package.
  • omc_next_command - Tool for scheduling next command. Standard.
  • OMCDepty - Background application for handling chores. Standard.
  • PkgInfo - Contains type and creator codes. The type is 'APPL' and you better leave it like this. Default creator signature for droplet is '????'. You may change it to something unique if you want but it is not required.
  • app.icns - Replace with icon of your choice. Do not rename.
  • Command.plist - this is the command description file containing your command(s). The file must be named Command.plist
  • Localized.rsrc - You do not need to edit this file except for localization
  • InfoPlist.strings - Edit strings for CFBundleName, CFBundleGetInfoString, CFBundleShortVersionString exactly the same way as you did in Info.plist
  • Localizable.strings - You may want to edit "Choose Objects To Process" string with something more specific for your droplet. This is the message text for Navigation dialog when file-based droplet is launched without files dragged on it.
  • main.nib - You do not need to edit this file unless you want to add items to main menu bar or for localization
  • preferences.nib - You do not need to edit this file except for localization
  • Private.strings - You do not need to edit this file except for localization
  • png pictures - A set of custom window backgrounds. Several images come standard with OMC. You can add yours too.