Tapir Frequently Asked Questions

Back to Index


Tapir

This the Frequently Asked Questions list for Tapir. Here you should find answers to some of the most common questions concerning the Tapir development tool.

What is Tapir?

Tapir is a powerful but easy-to-use developer tool for Mac OS X 10.3 or later. With Tapir, it becomes easy for you to create your own global menu applications, based on UNIX shell commands or scripts. Status items such as memory monitors, workload monitors and process viewers can be created in a matter of seconds, with only a little knowledge of the UNIX command line, while more sophisticated menu applications can be constructed using a scripting language of choice.

How does Tapir work?

Tapir creates a Mac OS X application bundle package (.app) which contains a binary and some configuration files. The binary opens an NSStatusItem menu in the menu bar according to settings in the configuration files and executes commands/scripts according to specifications.

How much does Tapir cost?

Tapir is a $15 USD shareware program. This means that you are free to try Tapir for a reasonable period of time, but if you decide to keep it you must register it. Once Tapir has been registered, the menu items you create will no longer contain a "Register Tapir.." item. Registration also entitles you to support and help with your development via E-Mail.

Once 200 registrations have been received, Tapir will be released as free software under the terms of the GNU General Public License. Thus, your registration will work towards making Tapir freely available to everyone.

Can I distribute/sell applications created with Tapir?

You are free to distribute applications created with Tapir as you see fit, whether freely or for profit. However, all your menu applications will contain a "Register Tapir..." menu item unless you have registered Tapir.

Shell command XYZ doesn't work (properly|at all)! What am I doing wrong?

Some shell commands require certain user-specific environmental variables in order to run, and may therefore fail to execute properly. Similarly, not all shell scripts output raw characters -- some use the ncurses library, and yet others take a very long time to run. Tapir menu applications deal with these issues with varying degrees of success. If all else fails, you can try to put your command in a script, and then configure your application to run the script instead of running the command directly, as demonstrated in the advanced Tapir tutorial.

My script won't run. Why not?

Scripts must contain a shebang line (#!) which specifies the path to the appropriate interpreter. If the shebang line is missing, it is possible that Mac OS X won't know how to execute the script in question.

The title icon is all skewed and strange. It didn't scale at all!

Currently, Tapir does not scale the title icon images at all, which means that you should preferably provide an image no higher than 21 pixels. It can be as wide as you wish, though.

It is also possible that the image you provided to Tapir is in a format that Mac OS X does not understand. In that case, you must convert it to the appropriate format before loading it into Tapir. As of writing, Tapir should be able to handle TIFF, PNG, GIF, JPEG, PICT, PDF, EPS, PS, MacPaint and BMP image formats.

My menu doesn't appear at all! What's wrong?

If you created a menu with a very large title icon or title string, it is possible that your menu is obscured by the left-wise menu bar of the current application. Your menu should appear if you select an application with a shorter menu bar. If you have problems selecting your menu, it may be easiest to terminate it via the Activity Monitor application in the Utilities folder, and recreate it with a shorter title area.

All my menu shows is "Timeout (n)", and then it eventually quits!

This means that the menu command or script you specified failed to complete execution within the 'Timeout' parameter, which is configurable in the Tapir interface. Once a Tapir menu application has timed out three times in a row, it quits.