DevExtra 8.0

DevExtra is a free set of productivity tools for developers using Microsoft Visual Studio 2005.

Designed primarily for C++ developers, DevExtra includes many useful features all packaged conveniently as a single Visual Studio Addin.

Download

Here's the downloads of both the addin and standalone versions of DevExtra.  Be sure to read release notes below for important information about these downloads. 

Important: If you're installing this over an existing installation and you've modified any of the standard code generator templates, back them up before installing.  This installer replaces all templates with the latest versions and doesn't care if you've changed them.

Download Alpha Version:  DevExtra80Setup.exe    

Download Stand Alone Code Generator: DevExtraCodeGen80Setup.exe

Code Generator

DevExtra includes a powerful script enabled, ASP style code generator, allowing your to easily develop code generation templates.

If you're looking for the VST Plugin Code Generator, it's included as a template in both the stand-alone and the add-in versions of DevExtra.  There's also additional information here - VST Code Generator and an updated template for MinGW/MSYS here - VSTCodeGen.zip.

Method Generator

DevExtra's method generator converts method declarations in IDL or C++ and instantly generates implementation stubs.

C++ Code Reformatter

A simple code C++ reformatter:

Although under the covers, the code reformatter has a powerful rule based system for reformatting. For the moment I've decided to only expose the simple version.  I may at some point setup a system to allow more control over code reformatting rules.

Project Statistics

Simple project statistics reporting:

Smart Case Replace

Smart case replace performs search and replace operations, maintaining the case of the matched text.

Toggle Source to Header

The simplest but arguably the most useful of all of DevExtra's commands - simply toggles the current document between .cpp implementation file and .h header file of the same name.  A huge time saver.  Be sure to bind a keystroke to this one.

Custom Environment Variables [New]

While Visual Studio provides a user interface for editing standard environment variables such as Path, Include and Lib, there is no facility for creating custom environment variables.  Because environment variables are available in project settings as $(Variables), being able to set custom variables can be extremely useful. 

Normally to set such a variable requires shutting down Visual Studio, defining or editing the variable at the operating system level and re-starting Visual Studio.

DevExtra however includes a simple user-interface for defining these variables:

Notes:

Full List of DevExtra's Commands

Frequently Asked Questions

Well nobody's actually asked anything as I've only released this today, but here's some stuff you might be wondering:

Does DevExtra work in Visual C++ Express?
No. This version of Visual Studio doesn't support addins. You might find the stand-alone code generator useful though if that's what you're after.
Why version 8.0?
Simply to keep in sync with the Visual Studio version number.
Can I write my own code generator templates?
Yes.  That's the whole idea of it.
Where can I get more code templates?
No where.  But if anyone would like to send templates in I'll more than happily put them up here somewhere, or consider including them in future builds.
Where's the help?
Click the help button on the add-in's toolbar or the help button in the main dialog of the standalone code generator.
Can code templates access Visual Studio's automation model?
Yes there's a Host property that returns Visual Studio's DTE object.
Why does the add-in toolbar appear docked to the left?
Don't know - that's just what Visual Studio does.
How to I bind keystrokes to commands? (like toggle source to header)
From Visual Studio's Tools menu, select Customize.  Click the Keyboard button.  In the text box labelled "Show Commands Containing" enter DevExtra. You should be able to figure it out from there...
Is it possible to debug code templates?
Not really.  Well not in a debugger anyway.  Even if you could you probably wouldn't recognise most of the script as I've not written to code to act as a full ActiveScript smart host (actually I have but for another project).  It didn't seem worth it for this project so I left it.  MsgBox is your friend for resolving template bugs.
How do I set the folder where code templates are loaded from?
In the Generate Code dialog, click the options button.  Enter one or more folders (one per line).
What's with the Options button on the addin's toolbar?
Adding or removing toolbar buttons in an addin is a bit of pain.  Because I can foresee wanting to have some global options for the addin, I put the button in but as yet there are not options.

Release Notes

Notes about this release:

Version History

Version history, newest version listed first

9 July, 2007 - Build 103s

14 March, 2007 - Build 102

11 March, 2007 - Build 101

Previous Version

The previous version of DevExtra for Visual Studio 6.0 is no longer supported, but still available for download:

DevExtra40Setup.exe