Slick Editing

By Jeff Cogswell  |  Posted 2010-02-03 Print this article Print

Slick Editing

SlickEdit 2009 sports a set of new features that jumped out at me early in my testing, starting with a new symbol coloring capability that takes syntax highlighting a step further by coloring, for example, a private member variable differently from a member function.

Another cool SlickEdit 2009 feature called Smart Open helped me locate and open files more quickly by taking the first few file name characters I typed into the smart open dialog and pulling up a list of matching files from various directories within my workspace. Since large software projects often end up with dozens or even hundreds of directories, this could be a big timesaver.

I was also impressed by SlickEdit's new Source Diff feature, which works like a traditional diff/merge utility with one important difference: This source diff program will ignore whitespace differences-a big help if comparing two files with few code differences but several layout and formatting differences. This is particularly common when dealing with files that have been run through an editor that "beautified" the code by replacing tabs with spaces, moving braces to or from a new line, and the like. I've seen cases in which diff utilities have practically choked displaying the changes between two files that had just one real code change between them. SlickEdit's Source Diff, on the other hand, can see past superficial whitespace and formatting changes, and show you only the lines with actual code changes.

I tried out the Source Diff by taking an existing C# source file that had all the opening braces on their own lines, and then manually moving the braces to the end of the previous line-a superficial change that does not impact the code itself. Then I removed several comments. Finally, I made a "real" change where I modified the characters in a string constant. I toggled the Source Diff feature on, compared the files, and, sure enough, the program ignored the superficial brace changes and highlighted the lines where I removed the comments and changed the string constants.

Other new features include the ability to export and import some or all of your settings. This is important to any programmer who has ever had to move from one workstation to another. And the ability to export only some settings is useful if you want to share settings with somebody else without replacing all of the settings.

Although not new with the 2009 version, there are several features in SlickEdit that tempt me to give up my old standby editors. One feature lets you create macros for SlickEdit, as you would with any good IDE. SlickEdit has a powerful template feature where you can create a (or use an existing) template that can be used for creating new source files. These templates are categorized. For example, there's a C++ template for a singleton pattern. If you create a new file based on this template, the file will start out with existing code for the beginnings of a singleton class.

Other not-so-new features include member list pop-ups, easy code navigation such as jumping to an identifiers definition, auto-completion (something I've come to rely quite heavily on, as it makes coding much faster) and an impressive regular expression evaluator. 

Jeff Cogswell is the author of Designing Highly Useable Software ( among other books and is the owner/operator of CogsMedia Training and Consulting.Currently Jeff is a senior editor with Ziff Davis Enterprise. Prior to joining Ziff, he spent about 15 years as a software engineer, working on Windows and Unix systems, mastering C++, PHP, and ASP.NET development. He has written over a dozen books.

Submit a Comment

Loading Comments...
Manage your Newsletters: Login   Register My Newsletters

Rocket Fuel