Not logged in
Resend Validation E-mail
Code Writer App
The most robust syntax-highlighting code editor control for Silverlight... period
Editing and Visualization
Documents and Languages
Silverlight 5 or later
Source Code Available
Bundled in Silverlight Studio
Silverlight Blog Entries
More Silverlight Controls
Help topics cover all controls and product features in great detail.
Many full-source demos and QuickStarts are included.
Configure the product using Visual Studio and Expression Blend designer enhancements.
Rock Solid Code
All pre-obfuscated code is scanned by the VS Code Analysis tool, and warnings resolved.
Documents and Languages
Extensibility is the name of the game when talking about SyntaxEditor's documents and languages.
Languages are service-based objects where you can plug in any functionality you require for them.
Use our free languages with your SyntaxEditor implementations, or build custom syntax language implementations if needed.
Document/UI Object Model Separation
SyntaxEditor's document and language object models have been implemented in a separate assembly from UI assemblies.
This allows documents, languages, and all related features (lexing, parsing, etc.) to be used independently of user interfaces.
Documents and Snapshots
It supports easy file load/save and can be tied to a syntax language to provide extended functionality.
A sequence of text changes made, showing how new immutable snapshots and versions are created
Snapshots allow you to parse text without fear of it changing in the middle of a parse.
There are powerful text scanning classes included and offsets within a snapshot can be translated to their relative location in any other snapshot for the same document.
This means that you can reliably locate a certain range of text, even after multiple edits have been made.
Batch Text Change Operations
for doing everything from simple text replace operations to append operations.
Multiple operations can be queued up into a single text change and executed as a single atomic unit.
Designed to Handle Large Documents
Documents have been designed for speed.
Large documents can load and be input-ready in SyntaxEditor nearly instantly.
This is achieved via internal storage virtualization for many features.
Snapshots also reuse common sections of document text to minimize memory usage.
They basically encapsulate all functionality for a particular code language that is being used within a SyntaxEditor control.
This is everything from various types of parsing all the way to simpler features like determining word breaks or performing line commenting.
Custom language definition can easily be created, thereby making it possible to build a code editor for any proprietary language.
While SyntaxEditor's flexible dynamic language definitions allow for nearly any language to be defined,
sometimes it is necessary for more than a single language to be used.
An ASP.NET language would most likely have HTML as a root language with tokens that can transition into ASP.NET, CSS, JScript, and VBScript languages on the fly.
SyntaxEditor fully supports transitions between parent languages to child languages.
This feature allows you to support the complicated language switching requirements of modern web languages and code generation templates.
Lexers and Parsers
Lexing is the process of scanning text and breaking it up into meaningful tokens that can be examined by a higher-level parser,
and used to drive syntax highlighting features in the editor.
Regular expression-based and hand written lexers are supported.
The flow of actions that generally take place whenever a text change occurs
Parsing is the process of performing syntax and/or semantic analysis on a text, and outputing some sort of parse data, generally an AST.
SyntaxEditor supports the automated calling of parsers via worker threads following text changes.
Any custom or third-party parser can be called and used with SyntaxEditor.
Code fragment editing is useful in situations such as where you want an end user to only see and edit the contents of a specific method or property,
or perhaps only a certain statement or expression.
When using any language that has a parser, this type of editing is easily achieved with SyntaxEditor.
Automated IntelliPrompt features for the language continue to function normally too.
Code fragment editing is achieved by setting a header and footer text property on the document.
Neither the header nor footer are visible to the end user but for parsing purposes, they are pre- and post-pended to the document's text being edited by the end user.
This allows for a complete, valid document to be parsed, even though the end user is only modifying a portion of it.
Tags that contain custom data can be applied to ranges of text, to store data with those text ranges and/or mark where special SyntaxEditor visualization features
such as adornments should be rendered.
The Language Designer is an application that ships with SyntaxEditor and aids in the creation of syntax languages.
It can perform code generation for a number of language features and even includes a debugger for grammars
The Language Designer editing the lexer for a syntax language definition
Export to HTML and RTF
SyntaxEditor has built-in functionality for exporting syntax-highlighted text content to a string or file in HTML and/or RTF formats.
Text statistics are a powerful feature that provide statistics about text in a document.
By default, there are numerous text statistics available such as line, sentence, word, character counts, and even readability scores.
Languages can choose to customize the statistics by supplying additional ones like commented-line counts, etc.
Code Writer App
Log in to add comments
Related clip arts and images