Komodo IDE : The Professional Development Environment and Editor for Ruby and Ruby on Rails
Komodo IDE is a professional Ruby IDE and editor. Komodo is for dynamic (scripting) languages, with a strong focus on Ruby software development. Ruby and RHTML code intelligence, Ruby debugging and a project template for Ruby on Rails help make Komodo the most efficient and helpful environment for creating Ruby applications.
Comprehensive Support for the Ruby Language
As with the other supported dynamic languages, Komodo provides a deep feature set for Ruby:
Code Intelligence

Ruby autocomplete in Komodo.
- Ruby auto-completion and calltips for modules, functions, and more
- A code browser to show a structural overview of code objects
Ruby Syntax Highlighting
- Configurable colors for keywords, builtins, variables, and elements of Ruby syntax
- Correct multi-language syntax highlighting in files (e.g. for RHTML)
Ruby Syntax Checking
- Instantly see errors in your code
- Quickly jump to error lines
Ruby Abbreviations and Snippets
In addition to standard autocomplete, Komodo has a language-aware snippet insertion feature called Abbreviations. You can easily add new snippets for Ruby or RHTML, and insert it in the buffer just by typing it's name and hitting a hot key.

Ruby Abbreviation Snippets in Komodo.
Smart auto-indent helps you create more readable code, and the formatting feature lets you hook into external formatters.
A Helpful Workflow for Ruby on Rails
Rails developers tend to have to hop through three different windows to get their work done:
- editor (often TextMate) to write the code
- a terminal window to issue commands
- a browser to inspect the results
The goal of the Komodo's Ruby integration is avoid the command-line for basic activities such as:
- Creating projects
- Selecting a database
- Add migrations, models, controllers
- Scaffolding
- Running tests
- Managing plugins
- Running the server
- Debugging the application (e.g. breaking in controller Ruby code, or RHTML views)
Code-completion crosses the various Rails boundaries. The model code knows about the schema and controller code knows about the model