Differences between revisions 4 and 5
Revision 4 as of 2009-01-18 14:49:03
Size: 3068
Editor: schilly
Comment:
Revision 5 as of 2009-01-18 14:51:36
Size: 3119
Editor: schilly
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
Netbeans is a GUI development evirnoment. The following instructions explain how to work on Sage, for Linux (Ubuntu 8.10, but should work everywhere). Netbeans is a GUI development environment. The following instructions explain how to work on Sage, for Linux (Ubuntu 8.10, but should work everywhere).
Line 29: Line 29:
   * Python platform: Manage - "New..." - select Python executeable "$SAGE_ROOT/bin/python", name it "Python 2.5.2 Sage"    * Python platform: Manage - "New..." - select Python executable "$SAGE_ROOT/bin/python", name it "Python 2.5.2 Sage"
Line 41: Line 41:
Netbeans supports Merucrial out of the box. Right-click on files in "File" window (Window>Files), see local diffs in a special diff window, commit changes, undo local changes. The Netbeans editor itself also supports nonlinear undos, right click on the left side of a highlighed change, see the diff, change only this part as in the local repository. Netbeans supports Merucrial out of the box. Right-click on files in "File" window (Window>Files), see local diffs in a special diff window, commit changes, undo local changes. The Netbeans editor itself also supports nonlinear undos, right click on the left side of a highlighted change, see the diff, change only this part as in the local repository.
Line 47: Line 47:
 * [[http://code.google.com/p/cubeon/wiki/GSTracRepository | cube example for repository integration in netbeans]]
 * [[http://trac-hacks.org/wiki/XmlRpcPlugin | trac xmlrpc]]
 * [[http://code.google.com/p/cubeon/wiki/GSTracRepository | cube example for Trac repository integration in netbeans]]
 * [[http://trac-hacks.org/wiki/XmlRpcPlugin | trac xmlrpc]] remote xml procedures to interact with Trac.

Developing Python/Sage with Netbeans

Netbeans is a GUI development environment. The following instructions explain how to work on Sage, for Linux (Ubuntu 8.10, but should work everywhere).

Benefits

  • syntax highlighting and assistance, code completion
  • indexes python and all libraries, i.e. you get a list of all available classes, functions and methods, completion of partial identifiers and they also show you the help for each command.
  • refactoring: i.e. there is limited support (you have to go through all automatic changes in the preview) for renaming variables, classes, etc.
  • tasks: netbeans searches the source code for tokens that indicate open tasks ("TODO", etc.), in menu: Window > Tasks

Requirements

  • Netbeans 6.5

  • Python
    • Netbeans menu: Tools > Plugins, search for "Python", install

Setup

Definitions

  • SAGE_ROOT = root dir of Sage
  • NETBEANS_ROOT = root dir of netbeans

Instructions

  1. cd $SAGE_ROOT
  2. ./sage -sh
    • note, that $HOME still points to your home dir
  3. $NETBEANS_ROOT/bin/netbeans
  4. File > New Project - Python > with existing sources

    • Name: "SageNetbeans" or what you like, save it in your $HOME dir

    • Python platform: Manage - "New..." - select Python executable "$SAGE_ROOT/bin/python", name it "Python 2.5.2 Sage"
    • select "Python 2.5.2 Sage" on the left, on the right in tab "Python Path" you can see the paths are in $SAGE_ROOT/local/lib/... (maybe click "auto detect" ?)
  5. next > source root folder: "$SAGE_ROOT/devel/sage/sage" - finish!

Note

  • After first startup it has to scan and index all the Python stuff (progress indicator bottom right). This could take some minutes, so don't wonder why nothing works...
  • Personally, I'm not happy with the default GTK theme in ubuntu linux, therefore I have to change the look&feel settings: edit NETBEANS_ROOT/etc/netbeans.conf - in the "netbeans_default_options" variable, change add/change parameter "--laf javax.swing.plaf.metal.MetalLookAndFeel" to get the java specific metal look&feel (or what you want).

Mercurial

Netbeans supports Merucrial out of the box. Right-click on files in "File" window (Window>Files), see local diffs in a special diff window, commit changes, undo local changes. The Netbeans editor itself also supports nonlinear undos, right click on the left side of a highlighted change, see the diff, change only this part as in the local repository.

Trac Integration

It is theoretically possible to integrate Netbeans with Trac using Cube°n. Maybe someone wants to look deeper into this ...

Open Issues

  • for some reason i don't know all files are marked as "ignored" by mercurial.

Netbeans (last edited 2010-11-29 08:43:35 by pang)