Snippets code from my daily experience

June 7, 2008

Overload same xul element twice

Filed under: chrome-manifest, overloading, xul — dafi @ 10:26 am

My extension MoreKomodo overloads many elements

  • command set
  • toolbar buttons
  • menu items
  • find results tab

Due to my laziness I’ve added all these overloaded elements in main morekomodoOverlay.xul file.

It contains not-strictly-related code all together, for example the find results tab code is separated from other UI elements.

I’ve found very useful to overload more than once the same element inside chrome.manifest to isolate xul code and also javascript code.

It’s very easy

overlay  chrome://komodo/content/komodo.xul chrome://morekomodo/content/modokomodoOverlay.xul
overlay  chrome://komodo/content/komodo.xul chrome://morekomodo/content/findResultsOverlay.xul

That’s all folks :P

March 23, 2008

Central extensions repositories

Filed under: extension, firefox, flock, komodo, songbird — dafi @ 10:21 pm

I spend my time to created extensions based on Gecko expecially for

  • Firefox, Thunderbird and SeaMonkey (all under Mozilla umbrella)
  • Songbird
  • Flock
  • KomodoEdit/KomodoIDE

Every product has its own developer website where you can upload your extensions (Komodo hasn’t a dedicated upload zone).

From a visitor/user feedback’s point of view Flock is the best.

Flock addons site is cool I love it, extension informations are very complete, you can see also the locales supported by extensions.

Songbird has a cool addons site simple and very quick, extension informations are complete.

Mozilla with AMO is the most important but is also the worst.

The outsider KomodoEdit addons site not yet really exists, registered users can’t upload their extensions.
I hope Komodo guys take a look at Flock addons site if they decide to create a similar place.

From a developer feedback’s point of view Songbird is the best.
After signup you can immediately upload and publish extension on Songbird site, the upload process is easy and publication policy very developer friendly.

AMO upload mechanism is simple but publication mechanism is awful. I don’t like its approval mechanism based on sandbox, my RichFeedButton waits approval for an year.

Flock allows to upload extensions immediately after signup but publication waits approval, after a couple of days I’m yet waiting ;)

The most mature and important addons site AMO, has IMHO the worst user/developer experience.

I don’t like so much Flock but it has a great develope/user website

February 14, 2008

Extend Firefox 2 Contest and other surprises

Filed under: firefox, mozilla, openkomodo, table2clipboard — dafi @ 9:06 pm

January and February are very important months for my programming activites.

In January ActiveState guys gave me a KomodoIDE license for my contribution to their OpenKomodo wiki, a great unexpected surprise, the first one.

A couple of days ago Mozilla published the Extend Firefox 2 Contest and I discovered my name on “Runners up” list, a great
unexpected surprise, the second one.
I can figure out ViewSourceWith is the winner, no! The winner is Table2Clipboard my outsider extension, a great unexpected surprise, the third one.

I’m happy that other people appreciates my work.

My feed reader alerts me, LifeHacker has new contents, I take a look and found they speak about Table2Clipboard, a great unexpected surprise, the fourth one.

ActivateState gave me a KomodoIDE license, EF2 prices contain a KomodoIDE license, now I have two KomodoIDE license, another surprise the fifth :D

Mumble mumble… may I sell the unused license?

January 8, 2008

Richscrollbar top ten download sorted by locale

Filed under: richscrollbar — dafi @ 7:58 pm

I’ve created statistics about Richscrollbar, I’m very proud to find Japan at 2nd place.

Place Download count Locale
1 138 en-US
2 78 ja
3 19 it
4 18 fr
5 17 en-GB
6 14 de
7 14 ru
8 12 es-ES
9 7 zh-TW
10 4 zh-CN

Italy, my country is 3th :-(

January 7, 2008

OpenKomodo namespace API

Filed under: komodo, openkomodo — dafi @ 7:30 pm

When you want to write extensions or macros for OpenKomodo you discover many new XPCOM interfaces to use, they are so much that you can be confused.

Komodo programmers fortunately have simplified XPCOM usage wrapping a bunch of them in easy-to-call functions.

These function are incapsulated in namespace as modern Javascript dictates, every namespace can contains several functions.

Table below shows OpenKomodo namespaces, good luck ;-)

Namespace Description
ko.browse Functions to launch browsers
ko.commands Functions to handling commands
ko.dragDrop Functions to handle drag&drop of files onto Komodo
ko.eggs Easter egg
ko.filepicker Functions to wrap nsIFilePicker
ko.help Functions to simplify launch help pages
ko.inputBuffer Functions to capture user input while a slow XUL window is loading
ko.interpolate Functions to easily use the KoIInterpolationService from JavaScript
ko.isearch Functions to handle incremental searches
ko.launch Functions to launch dialogs like Extension Manager, Watcher, Diff
ko.lint Functions to access lint from Javascript
ko.logging Functions to access the logging system from Javascript
ko.main Functions to hook Komodo startup/shutdown
ko.markers Scintilla image markers used in Komodo
ko.mru Functions to handle MRU
ko.open Functions to open buffer editors
ko.printing Functions to handle printer
ko.run.output Functions to handle run output window
ko.statusBar Functions to handle status bar
ko.stringutils Functions to work with strings
ko.uilayout Functions to handle various UI features
ko.uriparse Functions to convert/parse strings representing URLs
ko.window Functions to get window informations
ko.windowManager Functions to handle windows

November 1, 2007

Welcome OpenKomodo

Filed under: gecko, komodo, mozilla, xul — dafi @ 12:15 pm

Finally Komodo is open!

More informations at http://www.openkomodo.com/

Komodo isn’t a promise it is reality.

Open source === Open minds

Why I love it?

I use shanec words

#It allows you to work the way you want to

Sure, you don’t need to fit to your editor but your editor fits to you.

#It’s built for developers by developers

I’ve used ActivePerl for years a step ahead over perl language, a tool designed by programmers with my same needs

Now OpenKomodo is the new frontier, the missing piece: THE EDITOR.

D2D is the right definition: Developer2Developer

# It’s easily extensible using XML, JavaScript, and if you like, Python, and C++

Ok OpenKomodo isn’t perfect for my needs but I can reuse my skills to enhance my programming experience

Use well know technologies to plug new behaviours, I love XUL and you?

The big problems with OpenKomodo are startup-speed and memory usage but these problems are related to Jecko runtime not to ActiveState’s guys implementation.

Do you think I’m a ActiveState employee? No! I’m a programmer that finally founds his programming home.

Next Page »

Blog at WordPress.com.