Wing IDE Reference Manual
Wing IDE Reference Manual

Version 1.1.10

next up previous contents
Next: 2. Customization Up: Reference Manual Wing IDE Previous: Contents


1. Introduction

Thanks for choosing Archaeopteryx Software's Wing IDE! This manual will help you get started and serves as a reference for the entire feature set of this product.

The manual is organized by major functional area of Wing IDE, including the project manager, source code editor, source browser, and debugger. Several appendices document the entire command set, provide pointers to resources and tips for Wing and Python users, and list the full software license.

The rest of this chapter describes how to install and start using Wing IDE. If you hate reading manuals, you should be able to get started by reading this chapter only.

   Throughout this manual, key concepts and important notes are highlighted in the same way as this paragraph. If you are skimming only, look for these marks.

1.1 Product Levels

This manual is for the Wing IDE Standard product level of the Wing IDE product line, which currently includes Wing IDE Standard and Wing IDE Lite.

Wing IDE Standard is the original Wing IDE product, and may be licensed for commercial or non-commercial uses. Wing IDE Lite is for non-commercial use only and contains a subset of the features found in Wing IDE Standard.

Wing IDE Standard and Wing IDE Lite are independent products and may be installed at the same time on your system without interfering with each other.

For a list of features that have been omitted from Wing IDE Lite, please refer to

1.2 Licenses

Wing IDE requires either an evaluation or a paid license to run. When it is first started, it will ask to copy your license file into place.

Evaluation licenses can be obtained from These unlock all features of the product for a period of 30 days, but may be used for evaluation purposes only.

Permanent licenses for non-evaluation use can be purchased in the online store at

Licensing is on a concurrent use basis, and requires a seperate license for each operating system used. Licenses purchased for multiple users allow up to the purchased number of users to run Wing at the same time on the licensed operating system.

1.3 Technical Support

If you have problems installing or using Wing IDE, please contact Archaeopteryx Technical Support at, or visit the Technical Support website at

Bug reports may be sent to Please include your OS version number and specific examples of the problem with each report.

See section 2.2.6 for more information on how to capture a log of Wing IDE and debug process internals. Whenever possible, these should sent to Technical Support along with your problem report.

1.4 Installing

If you are upgrading Wing IDE and have previously applied patch files to your installation, you may need to remove Wing IDE completely before you upgrade. See section 1.10 for information on how to uninstall.

   Quick start on Windows

Ensure that Python 1.5.2, 2.0, 2.1, 2.2, or 2.3 is installed on your system. Obtain the wingide-win32-1.1.10-1.exe installer package from and execute it on your system. After installing, run Wing IDE by selecting Wing IDE 1.1 from the Programs:Wing IDE section of the Start menu.

Once Wing IDE starts, follow the instructions to locate your license file (Wing will be copy it into place), accept the licensing agreement, and set up your initial preferences.

   Quick start on Linux:

To install Wing for individual use on an RPM-based system, obtain wingide-1.1.10-1.i386.rpm and a license file from, then run rpm -i wingide-1.1.10-1.i386.rpm as root.

For single-user installation on systems without RPM, obtain wingide-1.1.10-1-i386-linux.tar.gz and a license file from, unpack the tar file with tar -zxvf wingide-1.1.10-1-i386-linux.tar.gz, cd to the wingide-1.1.10-1-i386-linux directory, type, and answer the questions to specify where the program files should go.

After installing, the command wing should start the IDE. You may have to modify your path if you've installed the executables in a directory that isn't already on your path. You may also have to open a new shell or request that your shell rescan the disk for executables (for example, with rehash under tcsh).

Once Wing IDE starts, follow the instructions to locate your license file (Wing will be copy it into place), accept the licensing agreement, and set up your initial preferences.

   Quick start on Mac OS X:

To install Wing, obtain wingide-1.1.10-1-beta1-osx.tar.gz and a license file from, then double click on the tar.gz file to expand it into a directory. This directory can be moved around if desired.

Once Wing IDE starts, follow the instructions to locate your license file (Wing will be copy it into place), accept the licensing agreement, and set up your initial preferences.

1.4.1 Supported Platforms

This version of Wing is available for Microsoft Windows, Linux, and Mac OS X. Wing may also be compiled from source code on additional systems, such as Solaris and Free BSD. Windows

The Windows product has been tested on Windows 98se, NT4 SP3, Windows 2000 Professional SP1, and Windows XP Professional. Linux

The Linux product has been tested on RedHat 6.0, 6.1, 6.2, and 7.1; Suse 6.2, 6.4, and 7.0; Caldera 2.4; Mandrake 6.1, 7.1, 7.2, 8.0, 8.1 and 8.2; and Debian 2.2.

On RedHat 6.0, you must install Python 1.5.2, 2.0, 2.1, 2.2, or 2.3 and use that to run your debug program and the tar file installer (if RPM is not used), instead of the default Python 1.5.1 installation that comes with RedHat 6.0.

On Suse, you may need to install the gmp and python packages, or install Python from source, since Python is not installed by default here.

RedHat 5.2 is known not to work and there are no plans for supporting it. Mac OS X

The Mac OS X product requires an X server such as Apple's X11 for OS X product or XDarwin together with a window manager of your choice. Apple's server comes with a native Aqua window manager, or can be used with other window managers. Choices for XDarwin include Window Maker and OroborOSX. Other Systems

Wing can be compiled from source on Solaris and FreeBSD. See section 1.9 for details.

1.4.2 Prerequisites

In order to use Wing, you need to have the following third party materials installed on your system. Many of the above are available in the 3rdparty directory on the product CD and from For Windows For Linux Mac OS X

1.4.3 Python versions

Wing contains its own subset of Python that is used to run the IDE itself (but not for your debug programs). The debugger, which runs in a seperate process, can run under Python 1.5.2, 2.0, 2.1, 2.2, or 2.3.

In most cases, Wing will work out of the box, will find your default python installation, and will use it for debugging. You can, however alter the version of Python that is used to debug your program by using Project Properties and per-file Debug Properties dialogs. See section 6.3 for details.

The interpreter that is used for debugging is also used to determine which version of the Python manual is displayed from the Help menu, and it affects which Python standard libraries are used for source code analysis. See section 4.16 for more information.

1.4.4 Windows Installation

On Windows, Wing is installed by running the installer executable. Wing's files are installed by default in C:\Program Files\Wing IDE, but this location may be modified during installation. All users of Wing must have Create File and Write privileges to C:\Program Files\Wing IDE\profiles. This is where per-user preferences and other information is stored on Windows. Except for a shortcut in the Start menu heirarchy, all files are installed under C:\Program Files\Wing IDE (or your selected installation location).

In the text the follows, the installation location of Wing is referred to as WINGHOME. If you installed to the default location, this is C:\Program Files\Wing IDE.

1.4.5 Linux Installation From RPM

Wing can be installed from an RPM package on RPM-based systems, such as RedHat and Mandrake. To install, run rpm -i wingide-1.1.10-1.i386.rpm as root or use your favorite RPM administration tool to install the RPM. Most files for Wing are placed under the /usr/lib/wingide directory and a link for the wing command is placed in the /usr/bin directory.

RPM installation also creates a directory called floating-locks in /usr/lib/wingide. This is set up to be world writable by default. If you are worried about the security of this location, you may change its permissions or remove it entirely, as long as you don't plan a multi-user installation (described in section 1.8).

In the text that follows, the installation location of Wing is referred to as WINGHOME. If you installed from RPM, this will always be /usr/lib/wingide. From Tar Archive

Wing may also be installed from a tar archive. This can be used on systems that do not use RPM, or if you wish to install Wing into a directory other than /usr/lib/wingide. Unpacking this archive with tar -zxvf wingide-1.1.10-1-i386-linux.tar.gz will create a wingide-1.1.10-1-i386-linux directory that contains the script and a binary-package.tar file.

Running the script will configure Wing for use with individual licenses (multi-user installation is described in section 1.8). The install script will prompt for the location to install support files for Wing (WINGHOME), and the location in which to create a symbolic link to wing. These locations default to /usr/local/lib/wingide and /usr/local/bin, respectively. The install program must have read/write access to both of these directories, and all users running Wing must have read access to both.

In the text the follows, the installation location of Wing is referred to as WINGHOME. If you installed from tar, this will be the location you chose when you ran the installer. Adding Wing to your Path (for Linux)

In many cases, the Wing executable will already be on the user path. If it is not, you may type in the full path to Wing, or add the location where Wing's executable was installed to your path. This location will be /usr/bin if the IDE was installed from RPM. When installed from tar file, it will be the value supplied to the script.

Setting the path may be done system-wide or individually. How this is done will differ according to your exact OS version, the shell you are running and, in some cases, the preferences of your system administrator. Typically, per-user setup is in ~/.profile, ~/.login, ~/.bashrc, ~/.cshrc, or equivalent shell configuration file, and system-wide setup is accomplished with /etc/profile, /etc/cshrc, or /etc/csh.login.

After installing or altering a user's path, you may need to open a new shell for that user or request that the shell rescan the disk for executables (for example, with rehash under tcsh).

If for some reason you cannot set the path, typing the full path to the wing executable, creating a small shell script containing the full path, or setting an alias will all work as alternatives. Notes for Linux Users

By default, Wing for Linux uses Adobe Acrobat Reader and Netscape Navigator for viewing the manual and other items in the Help menu. Other PDF viewers and web browsers can be used instead; see section 2.2.7 for information on configuring these.

Gnome users should note that Wing comes with its own copy of GTK 1.2.8 that has disabled use of themes. As a result, Wing ignores your theme settings and always runs as if the Default theme were selected. This avoids problems with with some versions of GTK and some themes. You can get Wing to run against your native installed version of GTK, and to use themes, in one of two ways: (a) specify --system-gtk as the first command line argument for the wing startup script, or (b) rename or move WINGHOME/bin/gtk-bin (be sure to retain a copy in case your system's version of GTK is one of those that causes frequent crashing in Wing).

1.4.6 Mac OS X Installation

On Mac OS X, Wing is installed from a tar archive by double clicking on the archive file. This will expand the contents of the archive info a new folder on disk in the same location as the archive. Subsequently, the tar archive can be removed and the expanded form of the application can be moved on disk as desired.

In the text the follows, the installation location of Wing (the location of its application folder) is referred to as WINGHOME.

1.5 Running the IDE

You are now ready to use Wing IDE!

On Windows, start Wing IDE from the Program group of the Start menu.

On Linux, just type wing.

On Mac OS X, first launch your X windows server and window manager. Once this is done, start Wing IDE. If you launch Wing from the command line using Contents/MacOS/wing inside the Wing IDE app folder, then you may need to set your DISPLAY environment variable.

1.5.1 Installing your License

The first time you run, Wing will create your personal settings directory, ~/.wingide on Linux and Mac OS X (~ is your home directory) or WINGHOME\profiles\[username] on Windows. If no user is logged in on Windows, "Default User" is used as the username. The personal settings directory is used to store your license, preferences, and other files used by Wing. If the directory cannot be created, Wing will exit.

Once the personal settings directory has been created, Wing will ask you to locate your license file. This is the file that was emailed to you when you signed up to try the demo, or purchased a permanent license. Once you locate the file, Wing will copy it into place in ~/.wingide/license.dat (on Linux and Mac OS X) or WINGHOME\profiles\[username] on Windows. You will then be asked to accept the license terms.

1.5.2 Setting Initial Preferences

At this time, Wing will also take the opportunity to ask you to specify a few major options, such as your preferred editor personality, print paper size (Linux only), and whether or not to auto-save project files. You may either select values or ask to always use the system defaults (as defined in WINGHOME/preferences). Once this is done, Wing will place a file called ~/.wingide/preferences (on Linux and Mac OS X) or WINGHOME\profiles\[username] (on Windows), with contents according to your choices. This will include at most only a few of all the available preferences, and you can add to or alter these values at any later time.

Please refer to WINGHOME/preferences and the rest of this manual for more information about the supported options.

1.5.3 Command Line Usage

Whenever you run wing from the command line, you may specify a list of files to open. These can be arbitrary text files and a project file. For example, the following will open project file myproject.wpr and also the three source files, README, and Makefile:

wing README Makefile myproject.wpr

(on Windows, the executable is called wing.exe)

Wing determines file type by extension, so position of the project file name (if any) on the command line is not important.

1.6 Installing a Permanent License

The Wing IDE evaluation license is a temporary single-user license that will expire one month from date of issue, and may be used for evaluation purposes only. If you have decided to purchase a permanent license from, you will receive your license file(s) via email.

If your evaluation license has not yet expired, you must remove or rename your old license before installing your new license. The license file can be found at WINGHOME\profiles\[username]\license.dat (on Windows) or ~/.wingide/license.dat (on Linux and Mac OS X; ~ is your home directory).

Next, run Wing and follow instructions when it prompts you to locate your license file. The new file will be copied into place automatically.

1.7 Installing Extra Documentation

The Help menu in Wing IDE provides quick access to the online versions of the Wing IDE manual, the Python documentation collection, and some useful web resources.

The HTML and PDF A4 and US Letter versions of the Wing manual are shipped by default with Wing's binary distribution. Additional manual formats are available from

If you are using Linux, the Python manual is not included in most installations, so you may also wish to download and install local copies of these pages. Place the top-level of the HTML formatted Python manual (where index.html is found) into WINGHOME/python-manual/#.# in your Wing IDE installation. Substitute for #.# the major and minor version of the corresponding Python interpreter (for example, 1.5 or 2.0). Once this is done, Wing will use the local disk copy rather than going to the web when the Python Manual item is selected from the Help menu.

1.8 Multi-user Installations (Linux and Mac OS X only)

A multi-user installation requires that you have the ability to share a common disk area among all the machines that will participate in the installation. This is usually done via NFS, although other file sharing techniques (such as Samba) will also work.

The primary difference between multi-user installation and single-user installation is the location of the license file. In single-user installations, licenses are in ~/.wingide/license.dat and license lock files are placed in /var/tmp. In multi-user installations, licenses and license lock files are both in WINGHOME/floating-locks.

There are two approaches to setting up a multi-user installation:

If you have installed from RPM on Linux, the floating-locks directory should already exist and be world-writable on each installation, and the IDE should be configured to use it. You only need to alter the installation if you want to change the permissions on the lock file directory or if you want to replace it with a symbolic link, as described above.

If you installed from tar file on Linux, you need to perform the installation in a way that indicates that you want it to work in multi-user mode. This is done by running --multi-user. At the end of the installation process, this will ask for the name of the directory that should contain license lock files and will create the directory if it does not exist. The script will also ask for the name of the group that all users of the floating license must belong to. Use <everyone> to specify that all users can use the floating license. Any group specified must exist prior to running the install script.

If you have installed on Mac OS X, you need to manually create a floating-locks folder in the Wing IDE application folder, and set its permissions to allow reading and writing by all users of Wing IDE.

In all cases, once installation is complete, you must copy the license file that you have purchased into WINGHOME/floating-locks and make sure it is readable by all users of the installation.

   If copies of Wing crash or are terminated from outside, the license lock files located in /var/tmp (or in WINGHOME/floating-locks in multi-user installations) may be left in place, consuming one user license each. Wing will normally remove stale lock files, but can only do that for the host on which it is being started, thus in some cases leading to exhaustion of the available licensed user count.

To fix this, remove those files for which no Wing instance is running. The file name combines the license number, host name, and process ID of Wing so it is possible to determine whether a file is a lost file or an active file:


Be careful not to remove an active license lock file, as the Wing instance that is using it will cease to function until it is restarted.

1.9 Source Installation

Source code is available to licensed users of Wing IDE Standard (non-evaluation licenses only). You will need to sign and submit a non-disclosure agreement in order to obtain your source code access password.

1.9.1 For Windows

To install source on Windows, unpack the source archive as described for Linux below. If you do not have tar, WinZip can be used to unpack the archive.

Setting up for development on Windows is complicated and requires a number of additional tools and downloads. See the file build-files/README.txt for details.

1.9.2 For Linux, Mac OS X, Solaris and FreeBSD

Obtain the wingide-source-1.1.10-1.tar.gz tar archive from the downloads area of (your customer number and password are required for access). Unpack this archive with tar -zxvf wingide-source-1.1.10-1.tar.gz to create a wing-source-1.1.10-1 directory that contains the IDE source code.

See the file build-files/README.txt for more information.

1.10 Removing an Installation

1.10.1 Windows

On Windows, use the Add/Remove Programs control panel, select Wing IDE and remove it.

1.10.2 Linux

To remove an RPM installation on Linux, type rpm -e wingide.

To remove a tar archive installation on Linux, invoke the wing-uninstall script in WINGHOME. This will automatically remove all files that appear not to have been changed since installation, It will ask whether it should remove any files that appear to be changed.

1.10.3 Mac OS X

To remove Wing from Mac OS X, just drag its application folder to the trash.

1.10.4 All Platforms

If you previously applied patch files to your Wing installation, you may need to manually remove remaining files and directories after uninstallation. In this case, you should retain the folder profiles on Windows installations and floating-locks on Linux and Mac OS X multi-user installations if you plan to reinstall or upgrade Wing at a later date (these folders contain license and preferences information).

1.11 Command Line Argument

Wing treats any arguments given on the command line as file names that should be opened into the IDE, except for the following valid options:

next up previous contents
Next: 2. Customization Up: Reference Manual Wing IDE Previous: Contents   Contents