Open-source Python IDE for scientific computing
IEP features an intuitive and practical design and is aimed at simplicity and efficiency.
IEP was written in Python 3 and Qt.
Detailed instructions on how to install and use the IEP utility on your Mac are available HERE.
- Powerful introspection (see below).
- Allows various ways to interactively run code (see below).
- Highly customizable using the menu.
- Using an intuitive shortcut editor, a shortcut can be created for any item in the menu.
- Various handy tools, plus the ability to make your own.
- Choose between different QT themes.
- Full Unicode support in both editor and shell.
- The pythonic shells run in a subprocess and can therefore be interrupted or killed.
- Several shells can be used simultaneously, and can be of different Python versions.
- Command history.
- Text in the shell can be selected and copied. Text can be pasted to the command line.
- Integrated post-mortem debugging.
- Enables using several GUI toolkits interactively: Tk, wx, PyQt4, fltk, GTK.
- Supports removing previously written text by using the backspace char.
- Supports magic commands similar to IPython.
- Iep automatically detects installed python versions.
- Intuitive way to organize open files using the EditorStack.
- Enables auto indentation.
- Automatically determines the indentation width when loading a file.
- Matlab-style cell system to mark code sections (by starting a line with '##').
- Syntax highlighting for Python, Pyrex/Cython, Matlab, C, xml, and more.
- Syntax schemes easily editable and extendable (saving the style file updates the styles).
- Supports commenting and uncommenting selected lines.
- Drag-'n-drop files or directories to open them.
- Find/Replace (also supports regular expressions).
- The line ending style can be changed.
- Optionally use tabs, or insert tabs as spaces.
- Editor continued (features "inherited from" Scintilla):
- Indentation guides.
- Code folding.
- Brace matching.
- View whitespace / line endings / wrapped lines.
- Undo / redo.
- Highlighting of current line.
- Long line indicator.
- Introspection information is queried from the active shell, and from the source code (by continuously parsing the file in a separate thread).
- Auto completion for any object in the active Python session and all __builtins__.
- Optional auto completion for Python keywords.
- Auto completion for functions, classes, and class attributes defined in the current file in the editor (taking inheritance into account, even if a super class is defined in the shell).
- Shows signature of functions (from the shell or from the source) using a call-tip.
- Interactive help for all objects in the active Python session by moving up/down the auto completion list, by double-clicking on a name, or by filling in the name directly.
- Interactive help show the docstrings of properties (rather than of the returned object).
- Interactivity (ways to run code):
- Run code by typing directly in the interactive shell.
- Run selected lines (or current line if none selected).
- Run cell (a cell is the piece of code between two lines starting with '##').
- Run current file.
- Run main file of project.
- Run current file as a script.
- Run main file of project as a script.
- Standard tools:
- Source structure: a tool that lists the structure of the source in a tree widget. It can list classes, functions (and methods), import statements, cells, and todo items.
- Interactive help: a tool that displays help information interactively (on selection and scrolling through an autocompletion list.)
- Workspace: lists all variables (also in debug mode).
- File browser: browse files and search inside files.
- Web browser: a simple Qt web browser.
- Logger: a logger shell that displays iep's log messaged and can be used for development or for changing advanced settings.
In a hurry? Add it to your Download Basket!
What's New in This Release:
- List of issues that are fixed in this release:
- issue 82 : most texts are now translatable
- issue 86 : redesign of file browser tool
- issue 149 and issue 150 : better context menu in the editor