Just noticed a bug in the insight enhancement that I added earlier.
Sometimes it was dropping the insight when you typed the first character after the "."
So if you had something like this:
*start of file* application.
it would work fine, but if you had this:
<cfset someObj = createObject("component","#application.cit would drop the insight for the application scope as soon as you typed the "c" for customPackagePath.
I've fixed it and updated the download file, so if you had already downloaded it, you might want to grab the latest.
Spike
Spike wrote:
Hello all,
I've been doing a fair bit of farcry work recently, so to make the task a bit easier I've added some support for farcry to cfeclipse.
At the minute that consists of a new dictionary file called farcry.xml that lives in the same directory as the other cfeclipse dictionary files.
The implementation at the minute adds most of the scoped variables to content assist. What that means is that if you type "application." it will present you with a list of all the variables in the application scope for a typical farcry application. Rudimentary support for that was added in the latest release (1.1.16) I've modified it so that the list of variables gets filtered as you would expect when you type something like "application.dmse" rather than disappearing until you hit the next "."
I've also created a quick 'n dirty insight generator as a cfm template. It will loop through the application, session and request scopes generating the relevant xml for the scopes section of farcry.xml so you should be able to use it to generate insight that's specific to your app.
Currently it doesn't generate the xml for the components section of farcry.xml. I simply haven't had the time to put that together yet.
If you want to take a look at the work so far you can download it from http://www.spike.org.uk/downloads/cfeclipse_latest.zip
If you want to make any changes to farcry.xml you can do so and reload the dictionaries by using the ctrl+F5 keyboard shortcut. The dictionary files live in eclipse\plugins\com.rohanclan.cfml.xxx\dictionary where xxx is the highest numbered version of the plugin in your plugins directory (1.1.16.1 in this case).
If anyone fancies extending the cfm template to generate the xml the code for it is below. Like I said, it's quick 'n dirty ;):
******************************************
<cfsetting enablecfoutputonly="true">
<cffunction name="objToScopes">
<cfargument name="objName" type="string">
<cfset var obj = evaluate(arguments.objName)>
<cfset var scopes = "">
<cfset var i = "">
<cfset var type = "">
<cfoutput>
<scope value="#objName#" />
</cfoutput>
<cfif isObject(obj)>
<!--- do nothing --->
<cfelseif isStruct(obj)>
<cfloop collection="#obj#" item="i">
<cfif isSimpleValue(obj[i])>
<cfoutput> <scope value="#objName#.#i#" />
</cfoutput>
<cfelse>
<cfset objToScopes("#objName#.#i#")>
</cfif>
</cfloop>
</cfif> </cffunction>
<cfsavecontent variable="dictionary"> <cfoutput> <scopes> </cfoutput>
<cfloop list="application,session,request" index="scopename"> <cfset scope = evaluate(scopename)>
<cfoutput>
<!-- #scopename# scope -->
</cfoutput>
<cfloop collection="#scope#" item="i">
<cfif isSimpleValue(scope[i])>
<cfoutput> <scope value="#scopename#.#i#" />
</cfoutput>
<cfelseif NOT listFindNoCase('rules,factory,types,fu,permission,config',i)>
<cfset objToScopes("#scopename#.#i#")>
<cfelse>
<cfoutput>
<!-- #scopename#.#i# -->
</cfoutput> </cfif> </cfloop>
</cfloop> <cfoutput> </scopes> </cfoutput> </cfsavecontent>
<cfoutput> <textarea cols="100" rows="100">#dictionary#</textarea> </cfoutput> ********************************************************
Spike
-------------------------------------------- Stephen Milligan Code poet for hire http://www.spike.org.uk
Do you cfeclipse? http://cfeclipse.tigris.org
--
-------------------------------------------- Stephen Milligan Code poet for hire http://www.spike.org.uk
Do you cfeclipse? http://cfeclipse.tigris.org
--- You are currently subscribed to farcry-dev as: [EMAIL PROTECTED] To unsubscribe send a blank email to [EMAIL PROTECTED] Aussie Macromedia Developers: http://lists.daemon.com.au/
