The Wing IDE is an integrated development environment (IDE) from Wingware that is designed specifically for the programming language Python, to reduce development and debugging time, coding errors, and make it easier to understand and navigate Python code.
It provides local and remote debugging, editing (with multiple key bindings, auto-completion, and auto-editing), code intelligence, multi-selection, source browser and code navigation, code refactoring, unit testing, version control, Pylint integration, project management, search abilities, and extensive documentation.
Wing IDE is available in three product levels:
Wing IDE Professional – a full-featured commercial versionWing IDE Personal – free version for students and hobbyists that omits some featuresWing IDE 101 – a very simplified free version for teaching beginning programmersFor details on features provided in each product see the feature matrix. All three versions of Wing IDE run on Windows, Mac OS X and Linux.
Free licenses for the Professional version are available on application for some educational uses and for unpaid open-source software developers, (see here).
The level of the debugging support depends on the version used.
The free, (101), version supports:
GUI, Web, and script debuggingInteractive debugging from (and within) the integrated Python ShellException traceback reportingView stack, locals/globals, and return valueSupports input() and raw_input()Integrated debug process I/O with configurable text encodingNative console I/OThe Personal Edition adds:
Multi-threaded debuggingRemote debuggingDebug value tooltipsDetect unhandled exceptionsWorks with Django, web2py, Flask, Google App Engine, Plone, Turbogears, Zope and PloneAlter debug data valuesMultiple named entry points and debug launch configurationsAnd Professional includes:
Interactive debug probe with auto-completion, syntax highlighting, goto-definition, call tips, and documentation linksRecursive debugging to debug code invoked in the context of another debug stack frame, to any depthEasy remote debug configurationConvenient Restart Debugging toolTrack values by referenceEvaluate expressionsConditional breakpointsIgnore-counted breakpointsEnable/disable breakpointsMove debug program counterMulti-process and automatic child process debuggingDebugs unit testsBreakpoint managerProcess attach/detachInspect sys.modulesDebug Django template filesRemotely debug code running on Raspberry Pimatplotlib mainloop supportMark a range of code in the editor for quick reevaluation in Python Shell or Debug ProbeAuto-completer: offers completions both in the editor and in the integrated Python shells.Source Assistant: provides context-appropriate call signature and source documentation in the editor and in the source browser.Error indicators: flag bad code as you type.Source browser: browse single files or whole project by module or class hierarchy.Goto-definition: jump directly to point of definition.Find Symbol: keyboard-driven goto-definition within current file or any project file.Find Uses: find all points of use of a symbol, filtering out different but like-named symbols.Refactoring: rename or move a symbol and update points of use, or extract a range of code to a new function or method.Navigation menus: layered menus in each editor provide a handy index into source code.Indentation analyzer: inspect, repair, and convert indentation style in source files. Wing's editor also auto-indents and block indents according to context.Understands PEP 484 and 526 type hintingVersion control integration is available only in Wing IDE Professional. It supports:
Subversion,CVS,Bazaar,git,Mercurial, andPerforce.Emulates emacs, vim, Visual Studio, Eclipse, XCode, and Brief, and users can add custom key bindingsMulti-selections for simultaneous editing in multiple parts of a fileSyntax highlighting for Python, Django (web framework) templates, CoffeeScript, HTML/XML, CSS, JavaScript, C/C++, and about 70 other programming languagesIntegrated Python shell with auto-completion, syntax highlighting, goto-definition, call tips, and documentation linksSearch interfaces for keyboard or GUI-driven search in one or multiple files, using text matching, wild card, or regex searchingUnit testing integration runs and debugs tests written with the unittest, pytest, doctest, nose, and Django testing frameworksFlexible GUI layout and color schemesProject manager with project-wide search, quick project file open, and revision control integrated file managementBookmarksCode snippets with recursive inline data entryPylint integrationConfigurable color palettes and user interface layoutPerspectives for naming custom GUI layoutsExecute external commands in integrated OS Commands toolExtensive documentation, How-Tos, and tutorialExtend the IDE's functionality with Python scriptsVolunteer-maintained German and French GUI localizationFirst public version of Wing IDE was released on 2000-09-07, as 1.0 beta, only for Linux.
First stable version was v1.0 for Linux, on 2000-12-01.
Corporate name change: Archaeopteryx Software Inc is now doing business as Wingware: March 29, 2004
Wing version 4.x and earlier were based on GTK2 and the OS X version required X11. Wing 5 changed to Qt4 via PySide and no longer uses X11 on OS X. Wing 6 moved to Qt5 with PyQt5.
The history of all releases to date can be found at http://wingware.com/news