Quantcast
Channel: Ram – Ram's Blog
Viewing all articles
Browse latest Browse all 60

ColdFusion Thunder – It’s all new IDE

$
0
0

Though ColdFusion Thunder is the next version of ColdFusion Builder (the last version was 2.0.1), it is like a new IDE because it’s a major re-write. Past versions of ColdFusion Builder were built on top of Aptana. I had noted some of the challenges in implementing ColdFusion Builder a couple of years back, when CFB 2.0.1 was released.

ColdFusion Builder (till version 2.0.1) used a very old version of Aptana. Aptana later re-wrote and improved their IDE and released it as Aptana Studio 3.  The integration points in Aptana Studio were changed to such an extent that integrating CFB in it would have meant re-writing it. So we decided not to base ColdFusion Thunder on Aptana and implemented many features that Aptana had contributed earlier – most notably editors for HTML, JavaScript, CSS and XML. This also meant CFML editor had to be re-written because it was based on Aptana APIs to integrate HTML, CSS and JS editors in it.

The task was huge and we, in the ColdFusion team, had been working very hard during the past two years to – first build all (or most) the features of CFB 2.0.1 in Thunder, and then to add some more features. If you have used ColdFusion Builder in the past, then you will see great performance improvements in all the editors in Thunder. Specifically you should see difference when editing large files. The memory footprint is also improved.

Here are some of the new/improved features in Thunder - 

  •  As mentioned above, improved editor performance
  • Built-in ColdFusion Server. Thunder installer gives you option to install ColdFusion Splendor (next version of ColdFusion Server) along with it. If you select this option, the installer will not only install the server, but will automatically configure it in the server manager view of Thunder. This would be very useful for local development.
  • Option to quickly import local server in the server manager view. You just provide server name (any user given name) and path to ColdFusion server installation folder. Thunder will read port number and RDS information to configure the server in Thunder.
  • Option to set background color for each element in the syntax color preference pages.
  • HTML 5 code assist in CFML and HTML files
  • Syntax support for new language features in Splendor
  • Code assist for new functions (including member functions) and tags in Splendor
  • Improved JavaScript code assist
  • Configurable editor toolbar. Aptana editors had toolbar in each editor with pre-configured shortcut options to insert text in the editor. Many had asked to make this toolbar configurable, i.e. options to add/remove shortcuts.
  • Collapse CFML function on file option. CFEclipse has this preference option and many had asked us to provide similar option in ColdFusion Builder
  • Linux support. Earlier versions could not run on Linux becuse of a licensing library we used which was not supported on Linux. We have replaced that library in Thunder.
  • Support for HTML5 mobile application development
    • Mobile Project Wizard. You can start the wizard from File->New->ColdFusion Mobile Project menu option.
    • Mobile Project Templates. My colleague Milan has blogged more about this.
    • Preferences to setup integration with PhoneGap Build server. Go to Preferences->ColdFusion->PhoneGap
    • Package mobile application by right clicking CF mobile project in the Navigator and selecting ‘Generate PhoneGap Build’ menu. Using this option you can create Android and/or iOS package of your mobile app.
    • PhoneGap Status view (at lower-middle) where you can see PhoneGap builds created by you. You can also download the builds from this view.
    • Project properties to select files to be included when packaging mobile app and also to set many PhoneGap properties and features. Right click on a CF mobile project and select Properties. Then go to ‘ColdFusion Mobile Project’ option. You will see tabs for ‘Resource Selection’, ‘PhoneGap’, ‘Inspect’ and ‘Miscellaneous’ options.
    • Option to debug mobile application. To debug an application, right click on it in the Navigator view and select ‘Debug As’->’ColdFusion Client Application’. This will launch the debugger. When you run you mobile application, the execution will stop at breakpoints that you had added in cfclient code. Note that if you want to debug packaged application, then you need to first set options in Preferences->ColdFusion->Client Debug/Inspect Settings. Then right click on a mobile project and select  PhoneGap Debug->Generate Debug Build menu option.
    • Options to inspect (using Weinre) packaged mobile application. Right click on a mobile project and select PhoneGap Debug->Generate Inspect Build option. Make sure you set URL of the Weinre server in the project properties before generating the build.
    • Code assist for cfclient APIs. You also get JavaScript code assist in cfclient block.

Following features from CFB 2.0.1 are not available in Thunder public beta.

  • Quick Fix in CFML editor
  • CF Advanced Find and Search
  • Persisting code folding in CFML editor
  • Quick outline (this has been implemented post public beta)

Following features are implemented differently in Thunder using third-party Eclipse plugins

  • FTP synchronization
  • Log Viewer

You can download ColdFusion Thunder from Adobe Labs. If you are interested in developing mobile applications using Thunder, then you might find my blog post, Simplify Mobile Application Development Using ColdFusion, useful.

-Ram Kulkarni


Viewing all articles
Browse latest Browse all 60

Trending Articles