************************************
How to set up an IDE to use Anaconda
************************************

.. contents:: The following integrated development environments (IDEs) can be used to run Anaconda:
   :local:

Spyder
------

`Spyder <http://spyder-ide.org>`_, the Scientific PYthon Development EnviRonment, 
is a free interactive development environment (IDE) that is included with Anaconda. It 
includes editing, interactive testing, debugging and introspection features.

After you have installed Anaconda, you can start Spyder on OS X, Linux, or Windows 
by opening a Terminal or Command Prompt window and running the command ``spyder``.

Spyder is also pre-installed in the graphical :doc:`navigator` included in Anaconda. 
In the Navigator "Home" tab, just click the Spyder icon.


Python Tools for Visual Studio (PTVS)
-------------------------------------

`Python Tools for Visual Studio <http://microsoft.github.io/PTVS/>`_ is a free, open source plugin 
that turns Visual Studio into a Python IDE.

If you've installed Anaconda as your default Python installation and installed PTVS, your 
Visual Studio installation is already set to use Anaconda's Python interpreter in PTVS.

You can verify this by creating a new Python project and checking whether Anaconda 
is the Python it uses.

* To create a new Python project, navigate to *File -> New -> Project* (keyboard shortcut: CTRL+SHIFT+N) and select ``Python Application``.

.. image:: img/PTVS_newproj.png
   :height: 300px

* To check which Python the project uses, navigate to *Tools -> Python Tools -> Python Interactive* (keyboard shortcut: ALT+I).

.. image:: img/PTVS_pythoninteractive1.png
   :height: 300px

1. In the Python Interactive window, type ``import sys``, then press Enter.
2. Type ``sys.version``, then press Enter.

If PTVS is using Anaconda, you will see your Anaconda Python version displayed. (Anaconda 1.5.0 (64-bit) in the example below.)

.. image:: img/PTVS_pythoninteractive2.png
   :height: 150px

For more information on PTVS, check out the `official PTVS documentation <https://github.com/Microsoft/PTVS/wiki>`_ 
and the `PTVS installation instructions <https://github.com/Microsoft/PTVS/wiki/PTVS-Installation>`_.


PyCharm
-------

`PyCharm <http://www.jetbrains.com/pycharm/>`_ is an intelligent Python IDE for Windows, OS X 
and Linux, that is offered in a Community version for free and a Professional version for a fee.

Use PyCharm's *Preferences* to set it to use Anaconda. There are multiple 
methods to access the Preferences Window, including selecting Preferences 
within the PyCharm file menu or by clicking the Preferences icon in the top 
icon bar.

.. image:: img/PyCharm_iconbar.png
   :height: 35px

.. image:: img/PyCharm_menu.png
   :height: 200px

After the Preferences window is open, navigate to *Project Interpreter -> Python Interpreters*.  
Click on the + sign to add Anaconda to the Python Interpreters list.

.. image:: img/PyCharm_preferences1.png
   :height: 300px

If the Anaconda Python path is not listed, select *Local...* and navigate to the 
directory in which you installed Anaconda Python. Typically this directory is ``~/anaconda/bin/python``.

After you have added Anaconda, you will see it displayed in the list of Python Interpreters, along with the other packages that were installed with it.  Click *OK*. The PyCharm IDE is 
now set up to use Anaconda.

.. image:: img/PyCharm_preferences2.png
   :height: 300px

MORE INFO: `Official PyCharm documentation <http://www.jetbrains.com/pycharm/help/pycharm.html>`_, 
and the `Configuring Available Python Interpreters section <https://www.jetbrains.com/pycharm/help/configuring-available-python-interpreters.html>`_.


Eclipse and PyDev
-----------------

`Eclipse <http://www.eclipse.org/downloads/>`_ is an open-source platform that provides an array of convenient
and powerful code editing and debugging tools. `PyDev <http://pydev.org/>`_ is a Python IDE that runs on top of Eclipse. 

If you do not already have Eclipse and PyDev installed:

* `Download Eclipse <http://www.eclipse.org/downloads/>`_ and read the `Eclipse resources <http://www.eclipse.org/resources/>`_.
* You may need to install the latest `Java JDK/JRE <http://www.oracle.com/technetwork/java/javase/downloads/index.html>`_ 
  before installing PyDev in order for PyDev to show up in the Eclipse Preferences menu after PyDev installation.
* `Install PyDev <http://pydev.org/manual_101_install.html>`_.

After you have Eclipse, PyDev, and Anaconda installed, follow these steps to set Anaconda Python as your 
default by adding it as a new interpreter, and then selecting that new interpreter:


1. Open the Eclipse *Preferences* window:

.. image:: img/Eclipse1.png
   :height: 200px

2. Go to *PyDev -> Interpreters -> Python Interpreter*.
3. Click the New button:

.. image:: img/Eclipse2.png
   :height: 300px   

4. In the "Interpreter Name" box, type "Anaconda Python".
5. Browse to ``~/anaconda/bin/python`` or wherever your Anaconda Python is installed. 
6. Click the OK button.

.. image:: img/Eclipse3.png
   :height: 150px

7. In the next window, select all the folders and click the OK button again to 
select the folders to add to the SYSTEM python path.

.. image:: img/Eclipse4.png
   :height: 300px   

8. The Python Interpreters window will now display Anaconda Python. Click *OK*. 

.. image:: img/Eclipse5.png
   :height: 300px   

You are now ready to use Anaconda Python with your Eclipse and PyDev
installation.


Wing IDE
--------

`Wing IDE <http://www.wingware.com/>`_ is an IDE designed specifically for the Python 
programming language. Wing IDE is offered in Professional, Personal, and Free 101 versions.

To set up your Wing IDE installation to use Anaconda:

1. Navigate to the Python configuration window: *Menu -> Edit -> Configure Python*

.. image:: img/WingIDE1.png
   :height: 250px

2. Select the *Custom* option for Python Executable.

3. Click *Browse...* and navigate to ``~/anaconda/bin/python`` or wherever your
   Anaconda Python is installed.

4. Select the Custom option for Python Path.

5. Click *Insert* and browse to ``~/anaconda/bin/python`` or wherever your
   Anaconda Python is installed.

6. Select *OK*.

.. image:: img/WingIDE2.png
   :height: 200px

7. If you are prompted to reload your Python shell, do so. After the reload, you will
   see Anaconda in the Python Shell tab.

Wing IDE can use Anaconda's Python now.

.. image:: img/WingIDE3.png
   :height: 200px   

For more information, check out
the `official Wing IDE documentation <http://www.wingware.com/support>`_.


Ninja IDE
---------

`Ninja IDE <http://ninja-ide.org/>`_ is a cross-platform free and open source IDE 
specially designed for Python application development.

To use Anaconda Python with the Ninja IDE:

1. Go to *Project -> Open Project Properties*

.. image:: img/NinjaIDE_1.png
   :height: 150px   

2. In the *Project Execution* tab, select Anaconda Python for the Python Custom Interpreter. Enter the full path to the installed python interpreter.

.. image:: img/NinjaIDE_2.png
   :height: 350px   

3. Verify that this works by creating a test script. Enter this code:

.. code-block:: python

  import sys
  print(sys.version)

4. Run your test script. In the output screen, you will see your Anaconda Python version listed.

.. image:: img/NinjaIDE_3.png
   :height: 350px   

For more information, check out
the `Ninja-IDE documentation <https://ninja-ide.readthedocs.org/en/latest/>`_.
