I've attached an initial extjs cix file that can be used for the ext JavaScript framework, previously known as yui-ext. This cix was created from ext version 1.1-beta1.
Unzip the attached file (to anywhere you like), then go to Komodo's preferences panel and choose the "Code Intelligence" category. In the "API Catalogs" section, use the "Add an API Catalog" to browse and add the extracted Ext cix file.
The catalog should automatically be selected upon addition, so the next time you are editing in a JS buffer, typing "Ext." should bring up Ext completions (Note: it may take a few seconds to initially parse the Ext cix file internally the first time you try this).
I'd be interested in feedback for anything that is missing from this library or if anything is in the wrong place (this is the first parsing), this this library may be added into the main Komodo 4.2 release.
Cheers,
Todd
| Attachment | Size |
|---|---|
| ext_v1-1.zip | 125.81 KB |
The scanning is not working correctly for some elements, like Ext.get(), Ext.Element(). Bug raised:
http://bugs.activestate.com/show_bug.cgi?id=70684
Some of the descriptions are incomplete; for instance Ext.BasicDialog() shows part of the description: "CONSTRUCTOR: Lightweight Dialog Class..." but then it gets chopped where the example starts (I'm not sure if that's a technical limit or not)
Other problem I've seen is that some functions are not indexed in the ext.cix, like for instance, there's no Ext.MessageBox.show()... I didn't check if the function is there in the .cix or not (cix files are still too complicated for me)
Finally, Todd, I wanted to ask you how did you parse the documentation to generate the .cix? do you have a script that you could give me?
Regards,
Kronuz.
The ext structure and the docs are generated by scanning the source javascript files and processing the jsdoc comments inside these javascript files. The scanner is the default javascript ciler that Komodo uses to scan/process javascript files to create the code intelligence.
There are a couple of quirks which I still need to sort before this is going to be good enough for inclusion as a standard Komodo cix, and if this fails I may resort to scanning the extjs html docs provided, converting the html to a cix format.
Cheers,
Todd
I've updated the CIX file, fixing most of the bugs with the scanning.
If your noticing that the calltips for functions/classes are cut-off after 5-lines, you might want to modify the following file:
<install_dir>/lib/mozilla/python/komodo/codeintel2/util.py
and change the "LINE_LIMIT" setting to something more appropriate, like 30.
Todd.
Hey Todd, thanks for that CIX file dude.
I've been using it for some weeks now and I really appreciate it :)
Thanks Todd for the CIX !
I second Bernard, using and loving it !
(small question, any change of building one for ext 2.0a1?)
I've made updates to the cix files for versions 1.1.1 and 2.0-alpha1:
http://community.activestate.com/komodo-extension/extjs-api-catalog-coll...
It's now a Komodo extension, so that will make it easier to manage the updates through the Komodo extensions auto-update mechanism.
Cheers,
Todd