Komodo IDE is a full-featured IDE for Python, PHP, Ruby, JavaScript, Perl, Tcl, XSLT, Node.js, HTML, CSS, XML and more. Available for Windows, Mac and Linux, it's comprehensive features help you develop, debug and deploy more quickly and more easily.

Out of the box Source Code Control support for Subversion, Git, Mercurial (hg), Perforce, CVS and Bazaar.

Debugging

Debugging for Six Languages

PHP 4.4 - 5.3

Python 2.4 - 3.2

Perl 5.8 - 5.14

Ruby 1.8 - 1.9

Tcl 8.4 - 8.6

Node.js.

Changed Variable Highlighting

You can easily tell when a variable has been changed. When debugging, Komodo IDE 7 highlights any variables that have changed from the last breakpoint.

Local & Remote

Just click 'Debug | Go' to begin local debugging. Or use Komodo's remote debugging packages to have a separate process break into Komodo's debugger, ie. for debugging a web server script running via 'mod_php', 'mod_perl', a WSGI server, Rails, etc. The process being debugged can even be running on another machine.

Easy to Setup

Debugging is easy to setup. Often your first 'Step In' works out of the box. Komodo just needs to find your interpreter (and it generally can).

Rich Breakpoints

A rich set of breakpoint types is available to make tracking down a bug faster: break on file and line, conditional, watch for variable value changes, break on function call, on function return, on exception.

Multi-Session

Multi-session support allows you to simultaneous debug multi-process: step through both sides of a Python client calling a REST API implemented in Rails. You can even use Komodo IDE's HTTP Inspector to debug the HTTP traffic.

A quick outline of your code structure and the quickest way to find and jump to a function or class.

Code Browser

Easily navigate and filter source structure in a tree view of code objects.

Go to Definition

Jump to a symbol definition quickly, with a key stroke or with Ctrl+click (Cmd+click on Mac).

Extensible

The code intelligence system is very extensible. Extensions can provide support for new languages.

API Catalogs

Auto-complete and calltip info for a language module (ie. PyWin32, jQuery, YUI, PyQt) can be provided in a standardised XML file that describes the API.

Schema-based XML Auto-complete

An XML catalog file and any of a DTD, XML Schema or Relax NG schema can be given to provide auto-complete for XML dialects.

Sweet Editor

Syntax Coloring

Fast and accurate syntax coloring for dozens of languages. Here documents and long Python docstrings can confuse some syntax colorers. Not Komodo's. It even works within multi-language documents, ie. Ruby, HTML, JavaScript and CSS in RHTML.

IME Support

Support for native operating system input method editors to input Chinese, Japanese, Korean and Indic characters on Western keyboards.

Out-of-the-box background syntax checking for all core languages. Never waste time on an accidental syntax error again. If you are learning a new language, syntax checking will help you along.

Soft Characters == Less Typing

Type an open quote in your code file and Komodo will insert the close quote for you (a soft character). Type the close quote and Komodo will know that you want two quotes, not three. Likewise for parentheses. It'll save you time.

Abbreviations == Less Typing

Insert common boilerplate snippets and template code with a short abbreviation. Use Komodo's tabstops and interpolation shortcuts to define powerful and re-usable snippets.

Code Formatting == Nicer Code

Komodo supports an extensible system for code formatting. Plugin your favoured code formatter and access it quickly via the 'Format' in the context menu.

Vi Keybindings

Vi/Vim keybindings in a graphical IDE, the perfect combination. Vi emulation so good you'll be tweeting 'I can't believe it's not Vim'.

Hyperlinks, Go To Definition

Jump to the definition of a variable or function with Ctrl+hover and Ctrl+click (Cmd on Mac). Go to definition. Follow URLs. Edit a color in CSS. Define your own handlers.

Quickly access databases in order to view tables and database schemas, perform custom queries or view and edit table rows. Database Explorer supports SQLite out of the box, with available extensions for MySQL and Oracle.

Publishing

Sometimes editing locally makes more sense than editing remotely. With Komodo IDE's Publishing system, you can easily keep local and remote directories in sync.

Komodo is highly customizable via an extensive preferences system and attention to many years of quality user feedback.

Custom Keybindings

Out-of-the box keybindings, including Vi keybindings, are a good start. Almost any action in Komodo is a command that can be given a keybinding. As well, any Macro, Snippet or Run Command in the Toolbox can be given a keybinding.

Syntax Color Schemes

Syntax coloring is fully customisable. Schemes ('.ksf' files) are simple text files that can be dragged onto Komodo to install. There are many available.