Actipro SyntaxEditor for WPF について

WPF構文の強調表示機能、コードエディタコントロール、コード解析機能のスイート

Actipro SyntaxEditor for WPF は、ハイライトしている文法を含めて、行番号、ブロック選択、 IntelliPrompt UI 、分割ビュー、拡大縮小、 bi-di サポート等、効率的なコード編集のための機能満載のテキスト編集コントロールです。Actipro SyntaxEditor for WPF は C# 、VB、 XML 、など20以上のサンプル言語を含みます。カスタム言語定義も同様に開発でき、アプリケーションと共に配布することができます。このようなコントロールを利用することができる多くの他のアプリケーションがある中で、 Actipro SyntaxEditor for WPF はIDEアプリケーションでの使用のために設計されました。Actipro SyntaxEditor for WPF は1年のサブスクリプションを含んで、Actipro WPF Studio の一部として購入することができます。

Actipro SyntaxEditor for WPF is a syntax-highlighting code editor control that uses language definitions and a text/parsing framework to provide many of the features found in the Visual Studio code editor. Highlighting styles can be completely customized by the end user, even allowing the changing of text area background and line number margin colors.

Advanced Editing Capabilities
Actipro SyntaxEditor for WPF has a number of display features you find in the Visual Studio code editor such as line numbers, visible whitespace, word wrap, line modification marks, split views, mouse wheel zooming, and more. Multiple undo/redo support is integrated with the editor. Selections can be made using the standard snaking mode or block (rectangular) mode.

Over 100 Edit Actions
Over 100 edit actions are included with Actipro SyntaxEditor for WPF that cover everything from basic caret movement and selection to features such as tabification, character/word/line transposition, etc.

Unicode and Bi-Directional Editing Support
Actipro SyntaxEditor for WPF supports the editing of any Unicode characters and even has full support for working with embedded bi-directional text.

Actipro SyntaxEditor for WPF Text/Parsing Framework Features

Documents and Snapshots
A document is what is "edited" by a Actipro SyntaxEditor for WPF, as it is the object that provides access to all the text being edited. It supports easy file load/save and can be tied to a language definition to provide extended functionality. The complete document text is available any time via snapshots, where each snapshot is an immutable versioned thread-safe copy of the text at the time it was 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
The text/parsing framework's text change model is extremely powerful and provides many helper methods 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.

Language Definitions
Language definitions are a core piece of the text/parsing framework. They basically encapsulate all functionality for a particular code language that is being used within a Actipro SyntaxEditor for WPF control. This is everything from various types of parsing (which drive features like syntax highlighting) all the way to simpler features like determining word breaks or performing line commenting. Transitions between multiple languages are fully supported.Over 20 full source sample language definitions are included with Actipro SyntaxEditor for WPF for common languages like Assembly, Batch files, C#, CSS, HTML, INI files, Java, JScript, Lua, MSIL, Pascal, Perl, PHP, PowerShell, Python, SQL, VB.NET, VBScript, and XML. Custom language definition can easily be created, thereby making it possible to build a code editor for any proprietary language.

Line Commenting
Languages can each be assigned a line commenter that is capable of adding and removing comments. Algoritms for both line-based comments (like C#'s "//") and range comments (like XML's "<!-- -->) are supported. Custom algorithms can be developed as well.

Export to HTML and RTF
Actipro SyntaxEditor for WPF has built-in functionality for easily exporting syntax-highlighted text content to a string or file in HTML and/or RTF formats. Options are also available for auto-copying text in these formats when clipboard operations are performed.

Actipro SyntaxEditor for WPF IntelliPrompt Features

Completion List
The completion list popup is used to display a number of code completion options to the end user, not only providing intelligent information about the code being edited, but also improving the productivity of the end user by supporting "Ctrl+Space" functionality. Completion lists support a powerful filtering mechanism that can display tabs and/or buttons to show/hide items that meet certain criteria. They include numerous matching algorithm options, including some that allow you to make matches just by typing any characters in the item text. Custom matching algorithms can be developed, and the completion list auto-highlights matched text. Description tips show more information about items via the use of rich formatted content.

Quick Info
Quick info tips can be used to give more information about what is at the current caret location or under the mouse. They support any type of content, however the most appealing way to add content is to use our mini-HTML markup language that applies rich formatting to the displayed text.

Actipro SyntaxEditor for WPF Printing Features

Dialogs and Options
The display of various Print and Print Preview dialogs is as easy as a simple method call. Actipro SyntaxEditor for WPF includes a number of settings that affect printouts only, and not the editor views.

Margins
Built-in margins include document title, line number, word wrap glyph, and page number margins. It's easy to create a custom margin and insert it anywhere in a printed page.

Actipro SyntaxEditor for WPF Searching (Find/Replace) Features

General Search Functionality
All of the standard find/replace options are available, such as match case, match whole word, search up, multiple search pattern providers (regular expressions, etc.), scope options, etc. Regular expression searches return captures and support substitutions.

Search Pattern Providers
Search pattern providers describe the format in which find and replace text can be entered when doing searches. Actipro SyntaxEditor for WPF includes normal, regular expression, wildcard, acronym, and shorthand providers but it's easy for you to build your own custom ones as well.

EditorSearchView Control
An EditorSearchView control is included that implements a complete find/replace user interface, similar to the one found in Visual Studio. It features stylish animations when making mode changes and showing/hiding options and can be embedded in a tool window from our Docking & MDI product.

Actipro SyntaxEditor for WPF Other Features

Performs Great with Large Documents
Actipro SyntaxEditor for WPF and the text/parsing framework have been specifically designed with large files in mind. They use numerous virtualization techniques that both reduce memory usage and improve performance, especially when large files are involved. Actipro SyntaxEditor for WPF can open a 10MB document almost instantly and its editing performance is unmatched by the competition.

Extensible Object Model and Separation of Document/UI
The Actipro SyntaxEditor for WPF product is split into two main assemblies: one that implements the text/parsing model and is cross platform (can be used in WinForms, ASP.NET, etc.) and one that implements the editor control user interface in WPF. There are a number of optional add-on assemblies that can be used and harness the frameworks in the main assemblies. The object models in the product make extensive use of interfaces and thus, are extremely extensible. Our design provides for many extensibility points where you can customize the behavior of the editor however you need.

XBAP Support
Actipro SyntaxEditor for WPF fully supports use in XBAPs (browser applications). We have specifically engineered it to operate within the bounds of the XBAP security sandbox.

Extensive Documentation and Samples
Actipro has spent a lot of time refining the design of Actipro SyntaxEditor for WPF to take advantage of WPF best practices. We realize that a good product is only part of the equation though and have also worked very hard to write detailed documentation on the product. In addition to that, Actipro SyntaxEditor for WPF ships with the full source for many QuickStart examples that each focus on learning a specific feature.

SyntaxEditor Web Languages Add-on
The core SyntaxEditor control provides a free implementation of XML that has syntax highlighting and several other features. However to truly get advanced XML editing functionality such as automated IntelliPrompt completion lists, quick info, schema validation, AST building, end tag auto-completion and more, you need to get the Web Languages Add-on.

SyntaxEditor Web Languages Add-on Features

  • Automated IntelliPrompt completion lists and quick info for elements, attributes, and value based on one or more loaded .XSD files
  • Abstract syntax tree (AST) generation
  • Automatic code outlining based on XML element structure
  • Reporting and automatic squiggle display of errors for invalid XML syntax and non-conformance to schema
  • Mouse hover quick info for syntax/validation errors
  • Easily obtain full XML contextual information for any offset
  • End tag auto-complete
  • Line commenting

SyntaxEditor .NET Languages Add-on
The core SyntaxEditor control provides free implementations of the C# and Visual Basic languages that have syntax highlighting and several other features. However to truly get advanced editing functionality such as automated IntelliPrompt, background parsing with AST building, syntax error reporting, automatic outlining and more, you need to get the .NET Languages Add-on.

SyntaxEditor.NET Languages Add-on Features

  • Automated IntelliPrompt completion list and quick info
  • Abstract syntax tree (AST) generation
  • Over 130 distinct AST node classes
  • Automatic code outlining based on AST structure
  • Reporting and automatic squiggle display of errors for invalid syntax
  • Mouse hover quick info for syntax errors
  • Line commenting
  • Optionally change the parser to parse expressions, statements, etc. instead of compilation units
  • Project assemblies that manage a project's code files and external references to other assemblies
  • Assembly repository that stores and caches reflection information for binary .NET assemblies

SyntaxEditor Python Language Add-on
Add advanced editing functionality such as background parsing with AST building, syntax error reporting, automatic outlining, smart indent and more to your applications that use SyntaxEditor.

SyntaxEditor Python Language Add-on Features

  • Automated IntelliPrompt completion list, parameter info, and quick info.
  • Syntax highlighting.
  • Abstract syntax tree (AST) generation.
  • Automatic code outlining based on AST structure.
  • Reporting and automatic squiggle display of errors for invalid syntax.
  • Mouse hover quick info for syntax errors.
  • Line commenting.
  • Smart indent.
  • Code block selection.
  • Delimiter (bracket) highlighting and auto-completion.
  • Project that manage a project's code files and references to external libraries, such as the Python standard library.
  • Package repository that stores and caches reflection information for Python packages.
  • Support for navigable symbol selector (contextual drop-down).