What's New in Oxygen XML Developer 18.1
Although Oxygen
XML Developer version 18.1 is a maintenance release that focuses on performance and
usability improvements, it also adds a variety of powerful new features, making it similar
to a major release.
A new Markdown editor allows you to easily write, preview, and convert Markdown content
into HTML or DITA. Oxygen is also able to validate Markdown documents and transform them
in the publishing stage.
Checking for and merging changes is made easier with the new 3-way directories
comparison tool and the addition of more syntax-aware diff algorithms.
The responsive WebHelp received numerous updates, including new skins, support for
expanding/collapsing components (sections, tables, etc.), automatic image scaling, support
for DITA 1.3-specific context sensitive help information, and control over what is indexed
for searches.
Content completion for XPath and XQuery was improved with new proposals from XPath 3.0
and XQuery 3.0 specifications.
The add-on that provides support for working with Saxon 9.7 was updated to provide an
action to obtain a compiled stylesheet that can be used with the new Saxon-JS (the
JavaScript version of Saxon that provides XSLT 3.0 in the browser).
As usual, Oxygen also added many new API and component updates for this
release.
There are changes in:
Markdown Editor
New Markdown Editor
Oxygen now includes a built-in Markdown editor that allows you to write and
edit documents using Markdown and then converts the syntax to HTML or DITA. The
specialized multi-pane editor includes a preview panel to help you visualize the final
output. The editor includes a variety of helpful actions, automatic validation, syntax
highlighting to make it easier to read and write, and specialized syntax rules that
combine popular features from several specifications.
Comparison Tools
Directory Comparison: Support for Three-Way Directory Comparison
A new feature was added that allows you to perform three-way comparisons on
directories to help you identify and merge changes between multiple modifications of the
same directory structure. It is especially helpful for teams that have multiple authors
contributing documents to the same directory system. It offers information about conflicts
and changes, and includes actions to easily merge, accept, overwrite, or ignore changes to
the directory system.
File Comparison: More Accurate Second Level Comparisons on XML Nodes
When using the
XML Fast and
XML Accurate
algorithms for two-way or three-way comparisons, the second level comparison is now
processed using a
syntax-aware comparison that splits the files or fragments
into sequences of tokens and computes the differences between them. This results in a more
accurate second level comparison.
File Comparison: Improvements to the Format and Indent Action
The Format and Indent action in the File Comparison tool now
works on more file types. You can now use the action on the following types of files:
XQuery, CSS, JavaScript,
JSON, RNC, XSD, RNG,
NVDL, XML, ANT,
DITAMap, WSDL, SVG,
Schematron, XProc, XSL, and
HTML.
Content Completion
Improved Content Completion Configuration Support
Oxygen allows you to set a configuration file to
control the content completion proposals for elements presented in the Content
Completion Assistant. Now, you can identify more precisely the elements you want to
control, by being able to set conditions that include attributes and attribute
values.
Improved Content Completion for XPath and XQuery
The Content Completion Assistant for XPath and XQuery was updated to take into
account the latest additions in XPath 3.0 and XQuery 3.0. For example, new functions are
now offered through content completion, such as empty-sequence,
document-node, item, comment,
namespace-node, and processing-instruction - just to
name a few.
WebHelp
New Skins Added to the WebHelp Responsive System
Some creative new skins were added to the WebHelp Responsive system for both
tree and tile variants of the templates. For example,
there are new skins called Aqua Marine, Ashes, Hightech,
and Sky that were added to the growing list of predefined skins.
Added Expand/Collapse Functionality in the WebHelp Responsive Output
The HTML content generated for the DITA sections, tables, topics, or other
components is now collapsible or expandable, allowing you to easily navigate through the
DITA topic content.
XSLT Extension Points for the DITA-OT WebHelp Plugin
The DITA-OT WebHelp plugin exposes two
XSLT
extension points that allow you to override the XSLT stylesheets that generates
the WebHelp HTML pages. This allows you to customize the WebHelp output without changing
the resources within the WebHelp plugin.
Context Sensitive WebHelp was Updated for DITA 1.3
The Context Sensitive WebHelp system was updated to support the new changes
from DITA 1.3 specifications. For example, you can now associate a topic with an
application by using the @appid and @appname attributes
available on the resourceid element.
New Template Components Were Added for WebHelp Responsive DITA Output
The WebHelp Responsive template mechanism received two new components. One for
related links and another for
child links. This improvement allows you to hide or move these components
anywhere in the layout.
Exclude Content from the WebHelp Search Indexer
The WebHelp Search Indexer can now be customized to
exclude
topics from the indexing process through various methods. You can do so by using
a WebHelp transformation parameter or in the DITA map by setting the
@search attribute to "no".
Images are Automatically Scaled in WebHelp Responsive Output
Improvements were made to image rendering in the output of WebHelp Responsive
layouts. The width of images in topic pages now automatically adapt to the size of the
screen.
API
A detailed list of all changes to the Java API can be found
here.
Start File Comparison Tool in 3-Way Mode
Start 3-Way Directory Comparison Merge Tool
The new
StandalonePluginWorkspace.openMergeApplication method allows you to open a
Merge application for comparing directories in a three-way mode. It
helps you identify and merge changes between multiple modifications of the same directory
structure.
Control Titles Computation in the DITA Maps Manager
Retrieve an Icon to be Displayed for a File Type
The
ImageUtilitiesSpecificProvider interface allows you to load an image from a
specified URL or to retrieve an icon for a particular URL file type that can be used in
your custom local or remote resources explorer view.
Provide Set of Attributes Defined on Each Key
The
KeyDefinitionInfo.setAttribute(String, String) API method allows the key
definition manager implementer to also provide the set of attributes which were defined on
a key definition, set of attributes which may be used by the application to filter the
list of proposed keys in various ways.
Listener for Replace All in Files Operations
The
PluginWorkspace.addBatchOperationsListener() API method can be used to add a
listener for
Replace All in Files operations in standalone distributions
of Oxygen. The listener is notified when the operation starts, before and after each
resource is modified and after the operation ends and can be used by CMS plugin
implementers to automatically lock/unlock resources.
Internationalization Support for Plugins
If a plugin has an
i18n folder with a specific
translation.xml configuration file containing translations in various
languages, the
StandalonePluginWorkspace.getResourceBundle() API method provides access to
translations of messages in the current language set in the application.
Create Editing Component to Use in Your Own Custom Container
Filter Drop-Down Menu Items in Eclipse
When you want to add or remove items from a drop-down button added by the
Oxygen Eclipse plugin in its internal toolbars, you can cast them to
com.oxygenxml.editor.editors.xml.IDropDownToolItem and add a filter to them.
Import Custom Options File While Resetting All Other Options
Customize Actions in the Review View
Customize Contextual Menu for the Outline View
The ActionBarContributorCustomizer.customizeAuthorOutlinePopUpMenu API method
allows you to customize the contextual menu of the
Outline view in Eclipse when
editing in the
Author mode. Similarly, the
MenusAndToolbarsContributorCustomizer.customizeAuthorOutlinePopUpMenu method was
added for the same purpose in standalone distributions of Oxygen.
Customize Contextual Menu of the Breadcrumb
Register Custom Editor Variables
Filter Attributes in Insert Reference and Edit Properties Dialog Boxes
A new method,
AuthorAttributesDisplayFilter.shouldFilterAttribute(CIElement, String, int), and
a new value,
SOURCE_INSERT_REFERENCE, were added to the
AuthorAttributesDisplayFilter API to allow for the filtering of
attributes in the
Insert Reference dialog box. The
SOURCE_EDIT_PROPERTIES value was also added to allow you to filter
attributes in the
Edit Properties dialog box.
Execute a Command Line Operation
Customize Attributes in Edit Properties and Insert Reference Dialog Box
Create Custom Form Controls Based on JavaFX
You can now use JavaFX components in your custom form controls. The new
saHeavyFormControlClassName parameter implements the
ro.sync.ecss.extensions.api.editor.InplaceHeavyEditor interface and allows for
more complex form controls (such as JavaFX-based form controls).
Other
Saxon 9.7 Add-on Includes an Action to Compile Stylesheets
The Saxon 9.7 add-on includes an action on the toolbar that allows you to
compile stylesheets and it can then be used with the new Saxon-JS - the
JavaScript version of Saxon that provides XSLT 3.0 support in web browsers.
Debugging Output Views Are Now Dockable
The output views in the Debugger are now dockable to allow for
a more convenient debugging experience. For example, you can now move certain views to a
second screen so that the main debugging area is not as crowded and more information can
be displayed.
Japanese Content Now Supported in Open/Find Resource Mechanism
The Open/Find Resource mechanism now supports Japanese content
and other languages. You can specify the content language in the Open/Find
Resource preferences page and the search engine will use stop words and
analyzers tuned for that specific language.
Support Added for BITS Documents
Support was added for BITS (Book Interchange Tag Suite) documents in the JATS
(NISO Journal Article Tag Suite) framework. This includes an NLM Book 2.0
new document template and BITS 2.0 XSD schemas.
Improvements to the XLIFF Editing Experience
Various improvements have been added for editing XLIFF documents. For example,
in Author mode you can now select between different styles to see various views
of the XLIFF documents. Also, Oxygen now supports setting the
@approved attribute on trans-unit elements to make it
easier to proofread translations directly in Author mode.
New Shortcuts to Move XML Nodes Up or Down in Text Mode
New shortcuts were added to move XML elements or XSLT variables up or down in
Text mode. Ctrl + Alt + Up
(Command + Alt + Up on OS X) moves the node up one line
while Ctrl + Alt + Down (Command + Alt +
Down on OS X) moves the node down one line.
Use Saxon XSLT Java Extensions When Validating XML Documents Against
Schematron
Now you can use Java extensions when validating Schematron, XSD/RNG with
embedded Schematron, XML documents against Schematron, or XML documents against XSD/RNG
with embedded Schematron. When creating a validation unit, the extensions can be added by
using a new Extensions button.
Component Updates
Saxon Add-on Updated to 9.7.0.8
The Saxon 9.7 add-on now comes bundled with version 9.7.0.8.
Eclipse 4.6
The Eclipse plugin version of oXygen works now also with Eclipse version
4.6.
DITA For Publishers Plugins Updated to 1.0.0RC25
The DITA For Publishers Open Toolkit plugins (used to generate EPUB output and
convert MS Word documents to DITA) have been updated to version 1.0.0RC25.
DITA OT 2.3.3
Oxygen now comes bundled with DITA OT version 2.3.3.
Rhino Library Updated to 1.7.7.1
The Mozilla Rhino library was updated to version 1.7.7.1.
Calabash 1.1.9-96
The bundled Calabash XProc engine has been updated to version
1.1.9-96.