Home » Key Benefits of Wing IDE »

Customizing Wing IDE

"Thank you for making the best Python IDE available." -- Clinton De Young

Over the years of providing attentive support to our customers we have learned that no two IDE users are the same. Wing IDE provides considerable latitude in customization of the GUI and key bindings, for integration of external tools, and even for extending the IDE by writing Python scripts.

Display Themes
Wing IDE's cross platform GUI adapts as much as possible to the native look and feel on Windows, Linux, and OS X and provides about 25 optional display themes, including a black background theme and several accessibility themes for low and high contrast and large type. Font, size, and color options can also be altered on the editor and other areas. On Linux, Wing can also be run with the system-provided GTK and themes.
Window Configuration
Wing can arrange the editor and tools provided by the IDE within a single window or in two multi-window modes. Splits can be added and removed in the tool areas and editors, and tools or editors can be moved out to separate windows. The toolbar is also configurable. Tool areas can quickly be hidden or shown with F1 and F2 and the editor area can be conveniently maximized with Shift-F2.
Keyboard Bindings
Since finger memory is so important, Wing IDE provides extensive emulation of VI/Vim, Emacs, Visual Studio, OS X key binding standards, and Brief. Customizing key bindings is also possible. For detail see Editor Key Bindings.
Wing IDE's Perspectives allow you to create, save, and restore named GUI states. This is a convenient way to select among tool configurations appropriate for different tasks, such as editing, debugging, testing, and reviewing or commiting changes. Perspectives can be assigned to key bindings for easy access. Optional auto-perspectives can be enabled to switch between edit and debug perspectives automatically when the debugger is started and stopped.
OS Commands
The OS Commands tool makes it possible to execute external command lines from within Wing, optionally passing current file name, line number, and other information from the IDE. The commands can be assigned to key bindings, provided with initial directory and runtime environment, and may be executed in unbuffered, line buffered, and pseudo-tty modes.
Auto-Reloading External Changes
Wing makes it easy to use an external editor or code generator, such as those found in a GUI builder, by automatically reloading open files that are changed on disk.
Extension Scripting API
Wing IDE provides a scripting API and may be extended by writing Python scripts. Scripted commands may be added to the GUI in the menu bar and the context menus on the editor and Project view, and can be assigned a key binding. Example scripts are found in the scripts directory in the Wing IDE installation and in the Wingware Wiki. Documentation is in the users manual.