I’m trying to cobble together a simple example API catalog for CFML’s library of functions, and I can’t seem to add the catalog through the Preferences > Code Intelligence panel. Each time I select the “Add an API catalog…” button on that preferences panel, I get a file selection dialog and I point it at my .cix file (below) and select “Open”. There is some sort of progress panel shown at the top of the Preferences window, but it goes so fast I can’t see what it says before it disappears. My API entry is not shown in the list of available catalogs.
Komodo’s pystderr.log file contains the following entries for each time I try:
[2015-06-01 05:48:34,668] [WARNING] prefs: The 'filepickers.defaultDirs' preference has changed while the pref window was open. If you get this message, a pref panel is incorrectly modifying prefs and the modified value will be lost.
[2015-06-01 05:48:34,992] [WARNING] koCatalogsTree: could not select `/Users/ron/Library/Application Support/KomodoEdit/9.0/apicatalogs/cfml-v10.cix': not found in available catalogs
I’ve tried this on both Komodo Edit and IDE 9.0.1 on Mac OS X with the same result. I also have Komodo IDE 8.5 installed on one of the systems I tried this on, and it behaves the same, including similar entries in the error log.
Is this a problem with the file I’m trying to add, or a problem in Komodo (in which case I’m glad to log this as a bug)? If this is a problem with Komodo, is there a way to side-load the .cix file to get Komodo to use it?
My example .cix file:
<?xml version="1.0" encoding="UTF-8"?>
<codeintel version="2.0" name="CFML10" description="CFML function library - v10">
<file lang="CFML" path="">
<scope ilk="blob" lang="CFML" name="CFML-v10">
<scope ilk="function" name="abs" signature="abs(number)" returns="Numeric" doc="Absolute value function. The absolute value of a number is the number without its sign.">
<variable ilk="argument" name="number" citdl="Numeric" doc="Value" />
</scope>
<scope ilk="function" name="acos" signature="acos(number)" returns="Numeric" doc="Returns the angle whose cosine is the value passed as the argument.">
<variable ilk="argument" name="number" citdl="Numeric" doc="The value to be converted into an angle. Must be between -1 and 1." />
</scope>
</scope>
</file>
</codeintel>
–
/ron