Review: ActiPro SyntaxEditor .NET
ActiPro SyntaxEditor .NET 2.5
ActiPro Software LLC
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
- 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.
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.