Revision as of 08:59, 11 February 2014 by Jpirek (Talk | contribs)

Python support in NetBeans

This project is a community driven effort. Oracle does not actively participate in or directly support this effort.

The latest installation instructions (7.4) appear to be at Set up NetBeans IDE 7.4 to use Python

To get the latest development builds of the Python IDE, see the How to install page.

You can browse the sources of the Python support at

Before being moved to Mercurial, the project was hosted at


Getting Started

Mailing lists

There are several mailing lists serving different purposes:

  • If you are interested in using the NetBeans Python plugin, use the mailing list (subscribe, unsubscribe, archives)
  • If you are interested in developing the NetBeans Python plugin, use the mailing list (subscribe, unsubscribe, archives)
  • If you would like to track issues, use the

mailing list

  • Si vous souhaitez sécuriser les données dans un coffre fort ignifuge visiter le site . Il y a également des armoires fortes et des coffrets à clés
  • If you would like to be notified about commits, use the mailing list

Old mailing list archives can be found at

See also Contributing to the project


Code completion

Code completion is available for

  • Modules available for imports
  • Imported symbols
  • Local variables
  • Other known classes and functions
  • Keywords

In addition, documentation is shown when available.


Smart Indent, Outdent, and Pair matching

Pressing the return key will indent or outdent in a smart fashion. Matching for (), [[ | ]], , and "" is supported.


Editor Hints

Editor hints provide the capability to dynamically check the syntax and the semantics of your python code.

Detailed descriptions of the available python hints are available in this document.

Code Folding

Classes, methods, functions, and triple quoted strings can be folded to conserve screen real estate and reduce clutter.

Unfolded code:


Folded code:


Semantic highlighting

Syntax highlighting reflects the semantics of the program: local and global variables are colored appropriately (and differently)


Instant Rename

You can click on the name of a variable and synchronously rename all occurrences of it. This screenshot captures the screen in the middle of an instant rename operation. The variable being renamed is shown in red.

(Note - this screenshot is a bit old, and the bug shown here (the scope of name incorrectly includes for example the parameter in the nested function "withversion") has been fixed)


Mark Occurrences

Placing the caret on a variable shows other uses of the variable. Placing the caret on a function or method call shows other calls to the function or method.

(Note - this screenshot is a bit old, and the bug shown here (the scope of name incorrectly includes for example the parameter in the nested function "withversion") has been fixed)



Find Usages, and Rename, are available. TODO: Add screenshots.


The debugger is derived from Jean-Yves Mengant's jpydbg debugger. A primer is available here at :



Multi-threaded debugging:

Platform Manager

The platform manager lets you specify which Python runtime (CPython or Jython) you wish to use. You can control which CPython is used, as well as specifying values for command line arguments. It is also possible to set the PYTHONPATH variable to set the Python load path.


Code Coverage

Test Runner UI

Creating Python Eggs


Planning for NetBeans 7.0 has moved to


  • Milestone M5 (Jul 21)
  • Code folding for methods, classes and string blocks (e.g. documentation) (Tor Norbye) (DONE) (EA)
  • Semantic highlighting (highlights method definitions and parameter and usages of parameters) (Tor Norbye) (DONE) (EA)
  • Instant Rename for local variables/parameters (Tor Norbye) (DONE) (EA)
  • Mark Occurrences for local variables/parameters (Tor Norbye) (DONE) (EA)
  • Code completion on local variables and keywords (Tor Norbye) (DONE) (EA)
  • Keystroke handler (smart indent when you press return, and smart outdent, pair matching for quotes, parens, brackets and braces) (Tor Norbye) (DONE) (EA)
  • Platform Manager Platform Info tool(Allan Davis)(DONE) (EA)
  • Project Known File Types(Allan Davis)(DONE) (EA)
  • Python Platform Manager(Allan Davis)(DONE) (EA)
  • Milestone M6 (Aug 4)
  • Indexing (Tor Norbye) (EA)
  • Platform Manager Integration to Project(Thomas Zezula and Allan Davis)(DONE) (EA)
  • Project Actions(Thomas Zezula and Allan Davis)(DONE) (EA)
  • Code Templates for basic statements and built-in functions(Manuel Tijerino)(DONE)
  • Milestone M7 (Aug 18)
  • Integration with project system (Tor Norbye) (EA)
  • Create Python project from existing code(Thomas Zezula and Allan Davis)(DONE) (EA)
  • Python Debugger(Jean-Yves Mengant) (DONE) (EA)
  • Debugger Session
  • Debugger Actions
  • Debugger views
  • Milestone M8 (Sep 1)
  • Python Unit Test templets(Allan Davis) (EA)
  • Platform AutoDetect(Allan Davis) (EA)
  • Basic Type analysis for smarter code completion/go to declaration (Tor Norbye) (EA)
  • Python Project Customizers(Thomas Zezula and Allan Davis) (80%)(EA)
  • Milestone M9 (Sep 15)
  • Basic Quick Fixes (Tor Norbye) (EA)
  • Basic Refactoring (Find Usages and Rename) (Tor Norbye) (EA)
Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo