The last ColdFusion Builder Extension you will install

I have to begin by apologizing. ColdFusion Builder is - already - a pretty darn cool tool. While it still has warts (and to be fair, it is still in beta), it has been my day to day programming tool for a few months now. One of the cooler features of CFB is how easy it is to extend it with custom extensions. You can find a bunch on RIAForge now. Unfortunately for them, though, I’m releasing an extension today that makes all of them pointless. (Warning, the size of this SWF is rather large - I recorded it on a large screen.)

Ok, so if you watched the video and returned, sorry to waste your time. I do have one redeeming point to this blog entry. You may have noticed that the file I was editing in the video was refreshed automatically. Extensions can do this, but there is a typo in the documentation. In order to refresh the file that was right clicked on, you can use the following code (taken from the 'fix bugs' extension):

<cfsetting enablecfoutputonly="true" showdebugoutput="false"> <cfparam name="ideeventinfo"> <cfset data = xmlParse(ideeventinfo)> <cfset myFile = data.event.ide.projectview.resource.xmlAttributes.path> <cfset projectName = data.event.ide.projectview.xmlAttributes.projectname> <cffile action="read" file="#myfile#" variable="code"> <cfset code = "<cftry>#code#<cfcatch></cfcatch></cftry>"> <cffile action="write" file="#myfile#" output="#code#"> <cfsavecontent variable="res"> <cfoutput> <response> <ide> <commands> <command type="refreshfile"> <params> <param key="filename" value="#myfile#" /> <param key="projectname" value="#projectname#" /> </params> </command> </commands> </ide> </response> </cfoutput> </cfsavecontent> <cfheader name="Content-Type" value="text/xml"><cfoutput>#res#</cfoutput>

Specifically, I believe the docs say to use <command name="refreshfile">, while what you really want is type instead. I've included the complete extension as an attachment to this entry.

Download attached file.

Raymond Camden's Picture

About Raymond Camden

Raymond is a developer advocate. He focuses on JavaScript, serverless and enterprise cat demos. If you like this article, please consider visiting my Amazon Wishlist or donating via PayPal to show your support.

Lafayette, LA https://www.raymondcamden.com

Comments