Home
»
Key Features of Wing IDE
»
"The autocompletion in Python code is so brilliant I think it's reading my mind"
--Grzegorz Nosek, Feb 2011
Wing IDE understands your Python code and puts context-appropriate knowledge
at your fingertips as you work in the editor, debugger, and integrated Python
Shell.
Auto-completer and Source Assistant
|
Built on a powerful Python code analysis and type inferencing engine, Wing's
auto-completer and Source Assistant provide relevant symbol completion,
calltips, and documentation as you work. Using the auto-completer reduces your
typing burden and mistakes. The completion options and calltips are always
context-appropriate and update immediately as code is edited. Wing offers
completions and calltips in the editor, the integrated Python Shell, and the
Debug Probe. |
Error Indicators
|
Error and warning indicators on your source code flag syntactical, indentation,
and other potential problems as you type. This increases the chances of writing
correct code the first time around. |
Source Browser
|
To see the structure of a particular file or to browse through your entire
project by module or class heirarchy, select the Source Browser from the Tools
menu. Choices for filtering and sorting the symbol list are provided in
the Options menus. |
Source Index Menus
|
Wing displays nested source index menus at the top of each editor that contains
a Python file. The first of these lists the functions and classes at the top
level of the file. The second and later ones enumerate the contents of the
current scope, listing methods or nested functions and classes. |
Goto and Return from Definition
|
Wing makes it easy to jump to the point of definition of a symbol in Python
source code by ctrl-clicking on it, pressing F4, or right clicking and
selecting Goto Definition. To return from the point of definition just click
on the back button in the top left of the editor or press Alt-Left. The
history buttons in the editor work somewhat like browser forward/back buttons
and are useful in traversing recently visited points in your source code. |
Find Points of Use
|
Wing provides a Uses tool for displaying and browsing through all the
points of use of a selected symbol in the source code. This works with local
symbols, class or module level symbols, and across imports and subclasses.
Aggressive static analysis and type inferencing makes it possible to omit
like-named but otherwise distinct symbols from the display. |
Static and Runtime Analysis
|
Wing implements two levels of Python code analysis and type inferencing:
Static analysis of source code and dynamic analysis of runtime state
associated with code, in the integrated Python Shell and whenever the debugger
is active. Since Python is a dynamic runtime-typed language, it can be a
challenge to determine the type of source symbols in static analysis. Runtime
analysis is an alternative available for code that is on the stack
whenever the debugger is active. Another way to assist Wing in type
inferencing is to sprinkle isinstance declarations into your code. |
Indentation Analysis
|
Wing analyzes indentation in source files and matches the existing
indentation style of the file as new code is added to it. The Indentation
tool can be used to inspect, repair, and convert indentation style in
source files. Wing's editor also auto-indents and block indents
according to context. |