Review: ActiPro SyntaxEditor .NET

ActiPro SyntaxEditor .NET 2.5
$299.95
ActiPro Software LLC
www.actiprosoftware.com

There was a time (oh, back when the earth had just barely cooled enough to support life, and I was in college) when pretty much anyone savvy with computers could sit down with a Pascal interpreter and write a reasonable text editor. Those days, of course, are long gone. Nowadays, if your application requires editing code, you're expected to provide syntax highlighting, typing prompts, collapsible regions, and all the other niceties of a full-featured IDE. Somewhere along the line writing the editor went from a trivial exercise to a significant bit of effort that can take massive amounts of time away from your other development tasks.

Enter ActiPro SyntaxEditor .NET. This Windows Forms component is easily the most full-featured editor I've seen in a component so far, with features that go far beyond syntax highlighting and "IntelliPrompts." Here's a partial list of what you'll get if you go with this control:

  • Support for several dozen common keystrokes, and the ability to remap them
  • Custom context menus
  • WYSIWYG printing
  • Support for multiple languages in a file, with proper syntax highlighting for each section
  • Marginal line modification markers and custom glyphs
  • Custom font support, including proportional width fonts
  • RTF and HTML export

All of this is intensely customizable. For example, you can control both the style and formatting of bracket highlighting just by setting properties. Beyond that, though, you have complete control over language definitions. These are saved and loaded as XML files, and ActiPro gives you ten common ones to start from. If you define your own custom langauge, you can opt to encrypt the saved file to prevent others from easily swiping your work.

Another interesting feature is the separation of display and parsing. Indeed, you can use the control to parse a language sample without instantiating a display at all. The parser makes a lexical pass to split the file into tokens, and then an optional semantic pass that lets you walk through the file assigning further meaning on your own. This has applications anywhere you need to deal with code, beyond simply editing it.

All in all, the SyntaxEditor .NET control looks full-featured enough to handle even the most demanding code-editing applications. The per-developer price includes redistribution rights, and you can download a full-featured trial (with a dialog box every time the control is instantiated) if you'd like to experiment with it yourself.

About the Author

Mike Gunderloy has been developing software for a quarter-century now, and writing about it for nearly as long. He walked away from a .NET development career in 2006 and has been a happy Rails user ever since. Mike blogs at A Fresh Cup.