Development environments

From Post-Apocalyptic RPG wiki

Jump to: navigation, search

Contents

IDEs

WingIDE

Availability

  • Status: Completely free feature-limited version; All versions are available for free when working on a Open Source project. Be sure to select Open Source under Discounts.
  • Home: here
  • Platforms: Windows, Linux, OS X

Setup

  • Remember to make sure your whitespace setup matches our Coding standards and best practices. You can do this via Edit -> Preferences -> Editor -> Indentation. It is also a good idea, to add the Indentation tool to some of the helper windows in the IDE.
  • To make running the code easier, you should set the "run.py" script as the Main Debug File. In this way, run.py will allways be executed when you hit Debug, regardless of which project file is opened. You can set this via Debug -> Set Current as Main Debug File.


Eclipse

Availability

Setup

  1. Install an Eclipse platform:
    1. Grab the Eclipse Classic download at http://www.eclipse.org/downloads/ (the other Eclipse platforms probably work just as well, but these instructions assume you're using the Classic Eclipse platform).
    2. Alternatively, if you're on Linux you may be able to install Eclipse through your package manager.
  2. Setup a Python development environment in Eclipse by installing the PyDev plugin:
    1. Fire up Eclipse and open the plugin installation window via the Help > Install New Software... menu option.
    2. Click the "Add" button at the top-right of the window and enter the PyDev update site url (http://pydev.org/updates as of this writing of this wiki article).
    3. Select the "PyDev" feature and press next at the bottom of the window; follow the instructions to install the plugin (you may have to restart Eclipse).
    4. After PyDev is installed open up the Eclipse preferences windows via the Window > Preferences... menu and setup your Python interpreter; instructions for how to do this can be found on the PyDev site.
  3. Create a Eclipse project for PARPG:
    1. If you want Eclipse to act as your SVN client you can install the Subversive or Subclipse Eclipse plugins; then, just create a new remote SVN project as documented in Development_tools#Subversive_and_Subclipse.
    2. If you'd rather use an external SVN client then you just have to create a new PyDev project in your Eclipse workspace and point it to your PARPG SVN checkout. Be sure to deselect the "create a 'src' directory..." option in the new PyDev project wizard, since PARPG stores its sources in the games/scripts subdirectory.
  4. Configure the PyDev project properties:
    1. Go to Project > Properties... and select the "PyDev - PYTHONPATH" section.
    2. Under the "Source Folders" tab remove any default source folder paths and add the "game" subfolder under the PARPG checkout.
    3. Hit the "Force restore internal info" button to update the source paths in your Eclipse project.

You should now have everything setup to work with PARPG! If you've never used Eclipse before it might take a while to get used to it as Eclipse has a lot of functionality and a steep learning curve, but PyDev is one of the best free Python development environments around so its well worth the effort.

Editors

Emacs

Availability

Setup

  • If you don't get syntax highlighting, make sure you have python-mode installed. Otherwise you can do
(global-font-lock-mode t)

or at runtime

M-x global-font-lock-mode
(setq indent-tabs-mode nil)
(setq c-basic-offset 4)

or alternatively at runtime (per buffer)

M-x set-variable RET indent-tabs-mode RET nil
M-x set-variable RET c-basic-offset RET 4

Vim

Availability

  • Status: Free as in freedom.
  • Homepage here.
  • Documentation here.
  • Platforms: All

Setup

  • In your .vimrc you can set the following:
syntax on           # enable syntax highlighting when possible
set et              # don't insert literal tabs, use spaces.
set ts=4            # tabs count for 4 spaces
set tw=78           # wrap at 78 charactes
set shiftwidth=4    # number of spaces to use for an indent or dedent (>>, <<)
Personal tools