Setting up Komodo Edit for Drupal development

komodo edit blog hero

Here at ActiveState HQ, it seems like I am doing more and more Drupal development. We’ve been using Drupal for a long time for various things, starting with some internal tools I developed to make customer service a bit easier. We launched our community site on Drupal 4.7 a few years ago, and it is still happily running on Drupal 5 and doing all manner of things for our users including Forums, FAQs, and Komodo Extensions hosting. When we launched the Open Komodo site over a year ago, Drupal was a natural choice to host the brochure content and blogs there as the development overhead was very low.
Going forward, I have recently transitioned into a new role here doing web development almost exclusively, and Drupal is always considered a key tool for us for deploying new sites quickly and effectively due tot he depth of the features and community support available to us.
Through all of this, I have of course been using Komodo IDE for all of my development, and this has been reflected in a number of small enhancements I’ve managed to squeeze into Komodo that make PHP development generally and Drupal development specifically a bit more productive. Drupal for its part helps me immensely by being a nice, clean procedural framework of uncomplicated PHP code; in terms of writing Drupal code in Komodo there is not much you need to do to get a lot of benefit.
Here are some tips for anyone trying out our free ( & open source! ) Komodo Edit editor for Drupal development:
1. Code Intelligence setup.
Komodo is particularly good at autocompletion for PHP code like drupal’s; it can find functions like nobody’s business. What I tend to do to make sure this works well is this:

  • first I create a project in the root directory of the module or theme I am working on. I tend to have a single project per module
  • second, I right-click on the project, select properties to bring up the Project Properties dialog
  • I click on Languages / PHP and add the root directory of my Drupal site ( where *al* the Drupal code is ) to the ‘PHP Directories’ list.

The next time I write some code in a PHP file in my Project, Komodo will scan all of the Drupal codebase and start offering completions for the entire Drupal API, including any contrib modules I’ve installed in /sites/
If you plan on writing any JS / jQuery code in your modules or themes, also be sure to go into Komodo’s Preferences and enable the jQuery API Catalog at Preferences / Code Intelligence. This will provide you with great autocompletion for jQuery code.
2. Snippets / Abbreviations
Lo those many years ago I watched those Rails videos and watched in amazement at how Textmate was used to quickly expand brief notations into entire blocks of code at high speed. I liked this feature so much I hacked a version of it into Komodo; we call it ‘Abbreviations’.
For more on how to use Abbreviations, please see the online docs. Of particular interest to Drupal developers are a few Drupal-specific snippets for quickly creating a Drupal 5.x module. You can see these in the toolbox under Abbreviations / PHP / Drupal.
Keep in mind that the default key command for inserting a snippet is Ctrl+T ( Cmd +T on OS X ). You *can* however change this to use the TAB key similar to how Textmate works by installing this excellent user macro:
I personally use this Macro, your mileage may vary.
3. Komodo extensions
While there may not (yet) be a Drupal-specific Komodo extension, there are a number of great extensions hosted on our community site that generally enhance how Komodo Edit works for PHP development:

  • MoreKomodo: various enhancements to Komodo’s UI, by rockstar Komodo extension developer Davide Ficano
  • Todo: scans the current file for ‘todo’ comments.
  • Ko-Clippy ( Clipboard Helper ): great extension for copying *and* escaping text in various ways.
  • Remote Drive Tree: browser remote servers and edit files, similar to the old Homesite interface.

I hope to post a companion piece for this post in a couple of days detailing all the amazing whiz-bang features in Komodo IDE that can offer help for any serious Drupal developer.

Recent Posts

Tech Debt Best Practices: Minimizing Opportunity Cost & Security Risk

Tech debt is an unavoidable consequence of modern application development, leading to security and performance concerns as older open-source codebases become more vulnerable and outdated. Unfortunately, the opportunity cost of an upgrade often means organizations are left to manage growing risk the best they can. But it doesn’t have to be this way.

Read More
Scroll to Top