Komodo

Komodo Tab Side Panes

Question: 

What happened to my tabs in the side Pane? Why do they look like massive columns?

Answer: 

With the slick new updates to the Komodo IDE UI, a problem has arisen when you switch Komodo IDE 8a side pane tabs to "Icon in tabs" under Preferences->Appearance->Left/Right pane layout.

This gets Sync'd to your Komodo IDE 7 profile as well. Komodo IDE 7 has no idea what you're talking about and reacts accordingly; it creates tabs the size of index fingers (window height and personal anatomy dependent).

This is easily remedied. First turn off Sync in Komodo IDE 8a once you have imported all your settings. Then simply revert the changes to your prefs. Preferences is under the Komodo menu option on OS X and under Edit in Linux and Windows.

Have a great holiday!

- Carey

Komodo 8.0 features

Product: Komodo | tags: komodo 8.0 release features

This is an overview of the major items included in the Komodo 8.0 release.

Download

Komodo 8 was officially released on March 7th, 2013. You can download it here:
http://www.activestate.com/komodo-ide/downloads
http://www.activestate.com/komodo-edit/downloads

Features

  • User Interface Styling: We've revamped the Komodo user interface, you'll notice a new Komodo logo, the toolbars, statusbars and side panes have all been updated, the editor schemes have been tweaked, and we'll continue to improve and modify the styling throughout the Komodo 8 release series. We've also kept around the old Komodo 7 styling for those that prefer a dash of color - simply choose the Classic icon set in Komodo's appearance preferences, or try one of the other myriad of new icon sets we now include in Komodo.

  • Floating Side Panes: You now get the ability to detach individual side pane tabs (Places, Code Browser, Debug, Find Results, Breakpoints, etc...) into their own separate window, so you can now put your debugging pane on a completely separate monitor screen (if you're lucky enough to have multiple monitors). Just use the mouse and right-click on the tab/icon you wish to move and you'll get the appropriate context menu.

  • Mini-map: Sitting right next to your editor scrollbar, the mini-map gives a high-level (10,000 foot) view of your code. It gives just enough details to allow you to quickly scroll and re-position the editor on a targeted section of code.

  • Open Files Side Pane: There is a new widget in the left pane that groups and lists all of the files you have opened. It groups the files by language and then sorts them - this is really useful if you have a lot of opened files. You can also hide the editor tabs completely, and just use the Open Files pane, giving you more vertical editing space.

  • Retina Support - Mac OS X: Retina support has been enabled in Komodo 8 - providing crystal clear high definition fonts for both the main editor and the interface. Combining the new Retina support, native full screen support and the updated Komodo interface - it's awesome to be a Mac developer using Komodo.

  • Auto Abbreviation Snippets: Komodo now provides automatic triggering for a selected group of toolbox abbreviations (snippets). This makes developing code faster, smarter and easier, with the user in complete control of the content being inserted. The below screenshot shows a Python auto abbreviation after typing "class " (note the space) and then tabbing between the different positions.

  • Conditional Snippets: It's now possible to use JavaScript code within a snippet, so you can programatically determine the snippet contents at runtime. Komodo allows the use of Embedded JavaScript (EJS) inside of the snippet text, which will be dynamically executed inside of Komodo's JavaScript environment, and as such it has full access to the Komodo JavaScript API.

  • Fast Open Shortcuts: When using the fast open dialog, you can now make a shortcut to frequently used files and directories. For example, given the directory "/some/long/path/to/my/code", you can make a shortcut called "code", then when using the fast open dialog, simply typing "code/" will now show you the files of this directory without the need to type out that full path.

  • New Languages

    • Laravel Blade - a PHP templating language
    • Sass - syntax checking added
  • Updated Platform: Komodo has received a number of updates to it's underlying code base. Komodo now uses Mozilla 18, Python 2.7 and Scintilla 3.2.4, Cocoa 64-bit (on the Mac), as well as other updated internal components. All of this means:

    • Better performance
      • faster startup time
      • uses less CPU and memory resources
      • find in files now 2x faster than Komodo 7
    • Better hardware support - by detecting and supporting modern computer systems
    • A better browser preview - supporting the latest and greatest web technologies

Komodo IDE and Right-to-Left (RTL) Languages

Question: 

Will Komodo work with Farsi, Hebrew or some Asian languages that are read right to left?

Answer: 

Komodo unfortunately does not work with right-to-left languages, as mentioned in our Komodo IDE release notes, due to a limitation in the text editor component.

Custom Break Points in Komodo

Question: 

How do I set and understand Komodo custom break points?

Answer: 

To SET a custom breakpoint in Komodo you simply right click on the line you want the breakpoint to be on then select "Add/Edit Breakpoint". That's the easy part.

For customizing custom breakpoints, take a look at Komodo Breakpoint Properties documentation.

Here is my explanation and some examples of each tab.

Conditional

With a Conditional breakpoint, you set an expression that when it evaluates to true, the script will break. For the following I will set the Condition field to a%2==0

a = 0
while a < 10: #it will break here when a is 0,2,4,6,8,10
    a += 1    #you can see this in the Locals debug tab

NOTE: If you were to set the Hit Count field to "Break when hit count is a multiple of: 2" in the File tab when editing the breakpoint, you would get the opposite, eg. 1,3,5,7,9.

Watch

Watch a variable and stop when it changes

a = 0
print a
while a < 3:
    if a % 2 == 0:
        pass
    else:
        a += 1
    print a  #This will NOT break the first loop through the while.
    a += 1

Function Call

Break when the specified function is called before the breakpoint.

 
def foobar():   #breakpoint will break here at function start
    print "foobar will return :|"
a = 0
print a
while a < 10:
    if a % 2 == 0:
        a+=1
    else:
        print "foobar's going to run! WOOH!"
        foobar()
        a += 1

NOTE: Red dot will not appear for either Function style or Exception style breakpoints. Check breakpoints tab in bottom pane to see them.

Function Return

This is similar to Function Call, only it stops when the function returns. In the above example it would break at the last line of the function, ie. print "foobar will return :|"

And finally,

Exception

This type will break when an Exception is hit in your code and you have written code to handle that Exception and allow the script to continue running. In this example you would write TypeError in the Exception text field under the Exception tab.

a = "0"
try:       #Without an Exception breakpoint, this will run
    a += 1 #With an Exception breakpoint, it will stop here
except:
    a = 0
print a

Hope that helped.

Cheers,

- Carey GC Hoffman

Node.js debugging just stopped in Komodo when it was working 5 minutes ago!

Question: 

Why won't my Node.js debugging work in Komodo any more?

Answer: 

Node.js was original designed with Posix systems in mind. It uses network calls not available on Windows systems. There was a port done in the open community which is not quite complete so sometimes processes are left running. The debugger thinks it has shut them down but it hasn't.

If you're node.js (or javascript) debugging stops working properly on your Windows machine your problem is most likely that some Node servers have been left behind. This will occur if you prematurely kill the debugger session.

Open your Task Manager and kill any node.js processes still running.

- Carey

Komodo and PHP 5.4 Debugging Not Working

Question: 

Why isn't Komodo working with my PHP 5.4 install?

Answer: 

Komodo 7.0.x is not compatible with PHP 5.4 yet. The new php_xdebug.* has not been release in the 7.0.x series.

You can either revert to PHP 5.3 until Komodo 7.1 is released

OR

Download the Komodo Nightly build which has the new php_xdebug.* file which is PHP 5.4 friendly. You can download the nightly here.

If you're still having problems getting PHP to play nice with Komodo you may not have PHP fully configured. That's covered over here.

PHP Debugging on Windows 7 in Komodo in 5 Minutes.

Question: 

Komodo won't use my PHP install for debugging! Why?

Answer: 

WARNING! Failed to configure PHP debugging.
WARNING! Could not determine PHP version number.

You might have seen these errors before. You were installing PHP on your system and trying to run it in Komodo. This FAQ is to help you jump some configuration hurdles. It's easier than you think...

  • Download and unpack the Zipped PHP to your machine. I put it in C:\php\.
  • Configure Komodo to use PHP interpreter or put it on the PATH.
    • Direct Komodo to the PHP interpreter:
      • Edit->Preferences->Language->PHP:Use this interpreter.
      • Click Browse.
      • Navigate to the folder you unzipped PHP into.
      • Select php.exe and click Open.
      • Komodo will configure and let you know that Debugging is ready.
    • Add C:\php\ to your system PATH.
      • To confirm that PHP has configured properly using the System Path variable click Check Configuration on the Komodo Start page. PHP should get two brand new green check marks

There you go. Now start writing some PHP!

NOTE: You do NOT need the Debug Pack download for debugging in Komodo. Just download the Zip.

I Lost my Komodo Key! How do I reset it?

Question: 

How do I reset my Komodo Sync Key? I seem to have misplaced it.

Answer: 

You can remedy this problem by typing some random characters in the text box that you would normal paste your Komodo Key into then click "Next".

This will present an option to reset your Komodo Key.

Steps:

- Tools->Set Up Sync...->Next
- If you haven't already...Enter email and password -> Next
- Enter 'I have no idea." in the text field->Next
- Click "I have lost my Sync Key"

This will be fixed very soon.

Komodo code intelligence include (scan) directories

Question: 

How does Komodo determine the list of directories to scan for it's Code Intelligence?

Answer: 

Komodo's Code Intelligence system will scan the following directories (note that the directory scanning is done recursively, up to 10 levels deep):

  • all directories included by you language interpreter (i.e. PYTHONPATH, PHP include paths specified in the php.ini)
  • all directories in your Komodo project folders
  • all language include paths you've set up in your global preferences
  • all language include paths you've set up in your project preferences

Tweaking the above areas can help to reduce the files/directories Komodo will scan.

You can also completely disable the code intelligence system by turning it off in Komodo's CodeIntel preferences (it's the first checkbox).

Komodo 6.1 features

Product: Komodo | tags: komodo 6.1 release features

This is an overview of the major items included in the Komodo 6.1 release.

Projects and Places

By popular demand, a number of Komodo 5 project features have been re-introduced into Komodo 6, such as file and directory references. These static references can be organized in groups to keep things logical and tidy.

The next image shows how projects once again are containers for files and folders (local or remote), and groups (the pink one), which may contain all of the above. The contents of a folder are no longer shown in the Project pane; instead, you can double-click on a folder to show its contents in the Places pane.
Project Pane Image

As well as this, Komodo now has a convenient command to locate the current editor file within the Places UI. You can even have Komodo continously synchronize the Places location with the current editor file as you change between files.

 

Django Improvements

A number of Django specific improvements were made to Komodo.

  • better syntax highlighting and smarter indentation for templates
  • syntax checking for templates
  • Automatic code completions for Django template tags:
    Django Tag Completions, triggers on "{% ":
  • Automatic code completions for Django template filters:
    Django Filter Completions, triggers on "|":
  • hyperlinks to easily jump to template file locations
  • easier to open files with fast open supporting directory name matching

 

Debugger Tooltips

During debugging, when hovering over a variable, Komodo IDE will now show an expanded tooltip, which shows the child elements of arrays, objects and hashes.

 

Fast Open Filtering

The Fast Open dialog will now match your search query to the full path shown in the dialog. This means you can now filter down to:

  • a specific directory location
  • project specific paths
  • files and directories at the current places location

 

 

Other information

 

Online Documentation

Previous Komodo release