Tweak UI

Posted by toddw on 2008-11-20 18:43 |
Todd Whiteman
Wed, 2011-03-23 18:18
  • : 5.0 - 6.*
  • : 5.0 - 6.*

Tweak UI is an extension designed to provide user configurable preferences for changing the Komodo user interface.

Note: This add-on will not be updated for Komodo 7 - as Komodo 7 provides built-in functionality to move tabs around and also provides preferences for the side-pane layout.


  • The ability to right-click on a tab to move it around (see note below)
  • The ability to change the Komodo side bars to display side-by-side tabs (like in Komodo 4)
  • The ability to set the file editor tab to display longer paths names

tweakui prefs

Future Ideas

  • Display multi-row tabs

Note 1: Tweak UI is an updated version of Shane Caraveo's tablist extension.
Note 2: Some tabs do not like to be moved (such as the Project and Toolbox tabs in Komodo 5).

Source code

baikis | Thu, 2008-11-20 23:41

great. thank you.

ActiveState Staff
Fri, 2008-11-21 12:01


Feature request: Support choosing a number of tail elements of the path for the editor tabs, rather than just the basename (the default) or the full path (the "Long file names in tabs" option here).

adam | Tue, 2008-11-25 08:16

Configurable number of tail elements of the path will be great.


ActiveState Staff
Tue, 2008-11-25 08:56

Added this to the extension, you can now set the number of additional directories you wish to see.


adam | Wed, 2008-11-26 06:39

Works great for local paths in windows (dir\filename) but not working when remote file opened from remote server via ftp (ftp://dir1/dir2/dir3/filename)

pd | Mon, 2008-12-01 04:49

Is it the desired behaviour?

Also, on OSX 10.5.5 the "Show tabs side-by-side (Komodo 4 style)" seems to only reskin tabs on the left and right panes, reposition the bottom pane tabs to the left (instead of center), but no reskinning, and does not affect editor pane at all (since it uses different tab style). Is this correct?

ActiveState Staff
Mon, 2008-12-01 12:18

We also noticed the extension did not auto-update correctly, there is a bug logged on this problem here:

The "Show tabs side-by-side" is only meant to change the left and right side-panel tabs, to look the same as they did in Komodo 4. I just looked at this on the Mac, and I see what you mean about the re-skinning, those tabs do look butt ugly (no Komodo skinning).

Right, the editor pane tabs are not affect by the tweakui side-bar tab settings, it's only meant for the side-bars.


pd | Tue, 2008-12-02 01:10

> We also noticed the extension did not auto-update correctly, there is a bug logged on this problem here:
Thank you for the link. I really have to think searching the bug database before posting. (For my defence I will say that one never know if it a real bug of a "feature" of one's particular installation, be it Mac or Windows)

> I just looked at this on the Mac, and I see what you mean about the re-skinning, those tabs do look butt ugly (no Komodo skinning).
Well, for die hard Mac people it do look so Aqua :-)

> the editor pane tabs are not affect by the tweakui side-bar tab settings, it's only meant for the side-bars.
What about the bottom pane? It seem to use yet a third "type"/skin of tabs?

davep | Mon, 2008-12-15 03:12

Is there anyway to skin the tabs on Mac? userchrome.css hacks?. Just find them too intrusive, but otherwise great to have the tabs back.

ActiveState Staff
Mon, 2008-12-15 12:46

Yes, you should be able to user userChrome.css modifications to tweak the tab css. The hard part is going to be finding the right element/class names to set, mostly you should find the relevant parts in:


gnosis | Thu, 2009-02-26 13:24

This extension is great, thanks! I much prefer the tabs to the dropdown. The width isn't an issue for me personally because I almost always flip the pane shut when I'm not using it to make more room for the editor.

The last feature that I'm really thirsty for is the ability to move the tabs to other panes. My preference would be to have the project browser on the right and the code inspector to the left. Forcing them both on the same side is (slightly) inconvenient for my work habits.

I'm evaluating Komodo 5 right now and loving it so far. I think this version will finally get me to ditch Zend 5.5 and its jvm performance issues. They really had the pane thing down, can put anything anywhere.


ActiveState Staff
Thu, 2009-02-26 15:17

I've added some support for moving the tabs around. This is difficult in XUL because if the tab is using any sort of XBL binding (which most of Komodo tabs do), this causes all XBL bindings to be dropped and you lose any state information. As such, some tabs still cannot be moved (notably the Project and Toolbox tabs).

To get around this, after tweakui moves a tab, it tries to initialize them as best as possible.

For extension developers: There are two XUL tab attributes that can assist tweakui when moving tabs, these are "onmovetab_unload" and "onmovetab_load". These are called (eval'd) when the tab is removed and re-added.


gnosis | Thu, 2009-02-26 15:34

After updating the extension and restarting Komodo, the tabs went away (reverted back to K5 native dropdowns) and I could no longer enable them. That is, the Tabs option isn't there under Appearance anymore. I uninstalled the extension, downloaded the new 1.1.0 xpi from this page, and re-installed. Still no love.

If I uninstall 1.1.0 and reinstall 1.0.1 xpi, the tabs come back.

Any thoughts why I can't get the new version to work?


ActiveState Staff
Thu, 2009-02-26 16:09

Yes, sorry about that, I'd mucked up the packaging of the extension.

Released v1.1.1 now to resolve this issue.


gnosis | Fri, 2009-02-27 10:40

Works perfectly now. Thanks again for a great extension! This allows me to have the panels just how I like 'em, just reversed. Which I'll bloody well have to get used to. -G

mindit | Sun, 2009-08-02 08:15

Happy to have found this, what's the point of hiding code browser and directory browser from each other?

Sure, yes it tightens up the look but some users have enough space for 3 panes and code workspace -- this extension at least makes switching between code and directory browsers a snap, which I am thankful for....

Nice work!

cor | Thu, 2009-08-13 10:06

Great! .. Except I only installed it to move the toolbox to the left, which it can't do. Darn!

Is this planned?

joeycalamaro | Sat, 2009-10-17 11:21

I really, really wish this worked properly on a Mac. Tabs are so much better from a usability standpoint. However because they're using Aqua controls it's just incredibly ugly. There's no easy way to skin in replacement tabs? I've never fiddled with userchrome.css before. :-(

Did you ever get it to work, Davep?

pawprint_net | Sat, 2009-11-28 06:24

It sounds like it's impossible to ever move the projects tab (basically I'm hoping for clearing the left side completely) am I reading that correctly?

ActiveState Staff
Sun, 2009-11-29 10:59

Right, it is currently impossible to move the projects tab (there are some hard coded settings that keep it anchored in the left pane).

machine | Wed, 2010-06-09 12:47

It seems like you can safely update install.rdf to support 6.* versions. I've tested it, works fine.

niki | Thu, 2010-07-15 07:28

After changing TweakUI v 1.1.1 to load in Komodo Edit 6 i moved "command output" to the right panel. Now i get error when running external tools:

TypeError: this.terminalHandler is null

ActiveState Staff
Thu, 2010-07-15 13:57

Right - there is no reset of the output panel. I've just fixed this in Komodo 6, but until then you can use the following Komodo macro to manually reset the output panel:;;


niki | Fri, 2010-07-16 01:13

this helps, but only first time. Second time i get:

Error while running in macro run_fix:

NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [ISciMoz.isFocused]

exception[QueryInterface] = function QueryInterface() {
[native code]
exception[message] = Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [ISciMoz.isFocused]
exception[result] = 2147500037
exception[name] = NS_ERROR_FAILURE
exception[filename] = viewbufferbase
exception[lineNumber] = 527
exception[columnNumber] = 0
exception[location] = JS frame :: viewbufferbase :: close :: line 527
exception[inner] = null
exception[data] = null
exception[initialize] = function initialize() {
[native code]

niki | Fri, 2010-07-16 04:46

another strange thing: after running these 2 methods, next time i open komodo my workspace is not reloaded?!?

ActiveState Staff
Fri, 2010-07-16 12:43

I get the same problem - that the workspace restore fails if I've moved the command tab... weird. Will look into it. For now you may need to disable the add-on and/or move the command output tab back to the bottom.

ActiveState Staff
Mon, 2010-08-16 15:24

I believe I've fixed the moving and workspace restore problems for TweakUI in Komodo 6 - should be fixed by the next nightly build.


pawprint_net | Tue, 2010-09-14 08:09

Tried rev 6202 from SVN, bundling as an xpi and it installs fine but doesn't seem to appear anywhere. Is this expected or is there some other way to get it up and running in Kmondo IDE 6?

Fantastic extension btw - thanks! - basically can't use Komodo without it (which is why I don't want to bother evaluating version 6 if I can't get this running and move my code browser over to the right side)

(edit) Still the same in the new 1.3

Fair Winds
... and watch for squalls from leeward

imperfect | Tue, 2010-09-14 07:12

I just updated to 1.3.0 and all my tabs are back to the left-hand side, and I don't get any menus when I right-click on them, so they are stuck there. WTF happened?

ActiveState Staff
Tue, 2010-09-14 15:37

1.3.0 had a bad version match, meaning the add-on wasn't properly installed for Komodo 6 RC1.

I've updated it again, it should now work again.


sergiol | Wed, 2010-09-15 00:46

When moving the toolbox for the left pane, toolbox gets empty.
I already reported the bug in, but maybe it was not the right place.
I believe the reason is visible on Todd's post:

pulchry | Mon, 2010-09-20 19:38

It would be nice to add the feature where I can move projects above places. Right now it's at the bottom. Can that please be added?

Aman Anderson

machine | Sat, 2010-10-16 12:57

Tabs can be dragged and a special blue arrow is drawn on drag target. Could you use it in your extension? I'm sure XUL provides all data needed to perform operation.

Possible bug: most of the tabs are empty after moved. I noticed two problems with them:

a) tree view handlers are not properly bound to tree xul elements (you can backup the binding before removing element and restore it to inserted panels, I do this in my add-on, but it's just because people reported bugs in my add-on when a tab was moved with Tweak UI)

b) the tabs may have bound some initialisation/refresh code to execute on load, those should be executed after moving too (as above, I made my add-on to to it, but I won't make Komodo tabs to do it as well)

Possible bug:
chrome.manifest contains lines:

overlay.xul                appversion>=6.0.0-b1
overlay   chrome://komodo/content/pref/pref-ui-tabs.xul  chrome://tweakui/content/prefs-overlay.xul  appversion>=6.0.0-b1

I'm not sure if it shouldn't been changed to appversion>=6 (or 6.0.0), I've noticed some problems when people marked target versions like this.

Possible bug:
In Komodo IDE when the Code Browser tab is moved to the right, it works, but after restart it gets back to the left panel.

Feeature request:
Add support for draggable tabs and creating vertical splitters.
Add possiblility to move tabs between vertical splitters.

I've noticed the tabs are moved quite late in loading sequence. If they need to be initialized, it's done twice. Can't it be done faster, by pinpointing the exact moment their overlays are merged to move them before their code fires? In my extension main code init is fired on "xul-overlay-merged" event. If you bound this event earlier to Tweak UI, my code would be fired AFTER Tweak UI - the extension wouldn't even notice its xul has been already moved on its init.

pawprint_net | Wed, 2011-02-02 21:10

Just accepted the update to 6.1 and TweakUI moved tabs are going a bit haywire.

The code tab won't work at all on the right and tabs on the left seem to change content almost randomly. Hopefully the extension can be updated soon to fix this. I had to disable it for the moment - So this is mainly a heads up for others - you may want to hold off on the update until TweakUI is also updated.

Fair Winds
... and watch for squalls from leeward

ActiveState Staff
Thu, 2011-02-03 18:11

I've updated TweakUI to handle "linkedpanels" (a change in Komodo 6.1). If you enable it and then update TweakUI - it should be working correctly again.


tbretton | Fri, 2011-02-04 00:04

Thanks! It works perfectly.


pawprint_net | Wed, 2011-02-09 22:27

Thanks for the quick update after 6.1 - there is still a small bug with the places panel (although not too serious)

The panel is always blank until I switch from places to any other tab and then switch back. This is only when first starting Komodo - almost like the places tab needs to get "initialized" or something. Happens every time I start Komodo with a previous project or open a project if one wasn't loaded. Only happens with Tweak UI enabled.

Hope it's an easy fix - thanks for all the great work so far!

Fair Winds
... and watch for squalls from leeward

ActiveState Staff
Thu, 2011-02-10 17:57

What settings have you got set in TweakUI?

Also, are there any errors in the Komodo log file (use the "Help->Troubleshooting->View log file")?


pawprint_net | Thu, 2011-02-10 18:44

For settings all I do is move the code to the right.

Yes there is an error that I believe relates

[2011-02-10 17:19:04,131] [ERROR] root:
+ 0 (string) Can't set project tree view sort direction: TypeError: ko.places.projects.projectsTreeView is undefined

Fair Winds
... and watch for squalls from leeward

hopp | Thu, 2011-03-03 01:23

I've noticed several misbehaviours of TweakUI on my Komodo 6.1.1 (Win7 x64) (I'm not sure, whether this misbehaviour occurs at Komodo 6.0 already ...)

Having TweakUI active ...
* and having the places panel moved to the left side following things fail:
* The Projects part of the places panel DOES NOT SHOW any project - even though there is a project opened.
* There is an "permanent spinning wheel"-icon in front of the base folder name on the top line of the places panel (first there is icon with dropdown containg entries like "bookmark Active tab ..." - I mean the second icon: normally it's a folder icon - now it's an permanent spinning wheel ...)

* and having the database panel moved to the left side following things fail:
* Previously defined database connections are not shown

Disabling TweakUI and restarting Komodo, the places- and database-panel are moved back to the left side ... and everything works fine again ...
(everything is shown, icons are as expected ...)

Edit: Sorry haven't seen the previous error report, but since I do have some more observations ....

drmjsommer | Wed, 2012-01-18 17:10

Todd, I see your note above "... This add-on will not be updated for Komodo 7 - as Komodo 7 provides built-in functionality ...", but I am not finding the ability to "set the file editor tab to display longer paths names" in v7, rc2.

This was a great feature, especially for where add/edit/etc type view names are used, across multiple controllers.

Is it still coming, or do I just not see it?


ActiveState Staff
Mon, 2012-01-23 14:42

I don't have any plans to merge the longer tab name feature into Komodo 7.0.

Those wishing to have longer tab names in Komodo 7 can use the "changeTabTitles" function from the tweak-ui addon:
and put it into a startup macro (in the Komodo toolbox).

If anyone wants this as a default feature of Komodo 7, I'd suggest to file an enhancement request at:


drmjsommer | Thu, 2012-05-24 09:47

Todd, I just submitted the enhancement request as Bug #94126.