Thursday, October 24, 2013

AllMargins 2012 v2.8.x Releases

On 1 September 2013 I released version 2.8 of the AllMargins 2012 Visual Studio extension. Since that release, there have been two additional "dot" releases. Briefly, here's what v2.8.x has to offer:

  • Visual Studio 2013 RC and RTM support
  • All the registry value names for the extension's settings have been renamed to prevent naming conflicts with the Productivity Power Tools for Visual Studio 2012 and beyond (more on that below)
  • Fixed the registry value name for method separator line color
  • Fixed the StructureAdornment extension so that method separator lines are drawn using the specified color
  • Added C/C++ union support

Extension Option Registry Value Name Clashes

David Pugh (MSFT) ported a lot (but not all) of the functionality of the original AllMargins extension into the Productivity Power Tools for Visual Studio 2012. The extension option registry value names were left the same. So, when I re-released the AllMargins extension as AllMargins2012, the two extensions would step over each other in terms of their settings for the common extensions. Starting with v2.8, the registry value names have changed to prevent this. As a result, those who installed v2.7 and subsequently customized the extension options by editing the registry, upon installing v2.8, will see that the extension is using the default values for all settings—it appears as though your customizations were changed. They are not. They are still present in the registry. However, new settings are now used by the AllMargins 2012 extension. You need only copy the setting value from the v2.7 registry value to the new v2.8 registry value. I apologize for the inconvenience.

For more details about what the various registry settings are, and their old and new names, see the description tab for the extension at the Visual Studio Gallery.

What to expect in the next major release

Many have spoken, including myself, about what you would like to see in the next major release. Work is underway; here is a quick rundown of what to expect (of course, this is subject to change—nothing is set in stone unless otherwise noted):

  • The ability to set the extension's options from the Visual Studio Tools|Options dialog. This is a top priority, non-negotiable item for the next major release. I have been wanting this very feature myself since David Pugh originally wrote this extension. Now that I'm maintaining this code base, this task falls on me.
  • The ability to specify the line widths displayed in the editor for the StructureAdornment extension
  • Add an option to show/hide the StructureMargin preview tool tip

The items above are what I can reasonably expect to fit into the next major release, though only the first item is guaranteed to make it through. Whatever doesn't make it through will be in a follow-up release. One item that is a planned feature for a future release is the availability to select a color theme for the StructureMargin and StructureAdornment extensions. As many have noted, and I agree, the "default" colors don't work well with Visual Studio 2012's dark theme. In addition, I plan on changing the default color for the class structure adornment from black to some other color, because with the Visual Studio light theme the black line can cause exclamation points to appear to not be present in C# and C/C++ preprocessor statements (e.g. #define !SOME_PREPROCESSOR_VAR), as one user pointed out to me. Black was the original color used by David Pugh—but due to this potential problem, it's best if this color is changed.

If there are any other features you'd like to see, please feel free to leave a comment here on my blog or on the Q AND A tab at Visual Studio Gallery. Thanks again for all of your comments, feedback, suggestions, and ratings!