Skip to content

Commit

Permalink
xquery-intellij-plugin 1.8.0
Browse files Browse the repository at this point in the history
  • Loading branch information
rhdunn committed Nov 12, 2020
1 parent 8efb804 commit c943917
Show file tree
Hide file tree
Showing 5 changed files with 90 additions and 49 deletions.
42 changes: 1 addition & 41 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,48 +1,8 @@
# Change Log

## 1.8 - (In Development)

XSLT:

1. Support parsing XSLT 1.0, 2.0, and 3.0 schema types.
1. Support XSLT 3.0 text value templates via the `expand-text` attribute.
1. Set the XSLT file icon when the IntelliJ XPath plugin is not enabled.

XPath and XQuery:

1. Further reduce memory usage by removing additional nodes from the PSI tree.
1. Auto-complete support for `CatchClause` variables.

IntelliJ Integration:

1. Support language injections on `StringLiteral`, `DirAttributeValue`,
`DirElemContent`/`DirTextConstructor`, `CDataSection`, and `Pragma`
elements.
1. Support `language=Language` injection marker comments.
1. Use the tag tree highlight colours for XML names in the breadcrumb bar
and editor.

Inlay Parameters and Parameter Hints:

1. Don't add inlay parameter hints when element and attribute node names
match the parameter name.
1. Support expressions like `f#1(2)`, `(f#1(2))`, and `1 => (f#2(2))`.

Saxon:

1. Include ClauseInfo objects in the flat profile table results.

MarkLogic:

1. Support attaching breakpoints to all expressions in the MarkLogic
debugger.
1. Better report `SEC-PRIV` errors when adding a query processor.
1. Fix the URI of the `xqterr` and `err` namespaces.
1. Auto-complete support for `cts:element-walk`, `cts:entity-highlight`,
`cts:highlight`, and `cts:walk` built-in variables.

## 2020

* [1.8.0 - 2020-11-12](docs/_posts/2020-11-12-release-1.8.0.md)
* [1.7.2 - 2020-08-31](docs/_posts/2020-08-31-release-1.7.2.md)
* [1.7.1 - 2020-07-25](docs/_posts/2020-07-25-release-1.7.1.md)
* [1.7 - 2020-07-10](docs/_posts/2020-07-10-release-1.7.md)
Expand Down
17 changes: 14 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,24 @@

## IntelliJ XQuery Plugin

This is a plugin for IntelliJ IDE 2019.2 – 2020.2 that adds support
for the XML Query (XQuery) language. This covers support for:
This is a plugin for IntelliJ IDE 2019.2 – 2020.3 that adds support
for the XML Query (XQuery) and XML Path (XPath) languages. This covers
support for:
1. XPath 2.0, 3.0, and 3.1;
1. XQuery 1.0, 3.0, and 3.1;
1. XQuery and XPath Full Text extension;
1. XQuery Update Facility 1.0, and 3.0 extension;
1. XQuery Scripting extension;
1. EXPath extensions;
1. BaseX, MarkLogic, and Saxon vendor extensions.

In addition, the plugin provides experimental integration for XSLT
when the IntelliJ XPathView plugin is disabled:
1. Support parsing XSLT schema types such as `xsl:sequence-type` in `@as`
attributes;
1. Support for attribute value templates;
1. Support for XSLT 3.0 text value templates.

See https://rhdunn.github.io/xquery-intellij-plugin/ for the plugin documentation
and tutorials.

Expand Down Expand Up @@ -59,13 +68,15 @@ This plugin provides support for the following IntelliJ features:
1. Parameter information;
1. Parameter inlay hints;
1. Structure view;
1. Breadcrumb navigation;
1. Breadcrumb navigation, including highlighting XML tags in the editor like
the IntelliJ XML plugin;
1. Paired brace matching;
1. Commenting code;
1. Integrated function documentation ("Quick Documentation", Ctrl+Q);
1. Context information (Alt+Q) for XQuery function declarations;
1. Spellchecking support with bundle dictionaries with XPath, XQuery, and XSLT
terms.
1. Language injection support on various elements, including string literals.

The plugin also supports the following IntelliJ Ultimate features:
1. Support displaying MarkLogic rewriter files in the Endpoints tool window;
Expand Down
4 changes: 2 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ buildscript {
ext.kotlin_version = ext.kotlin_from_build(ext.idea_since_build.toInteger())
ext.java_version = ext.java_from_build(ext.idea_since_build.toInteger())

ext.plugin_version = '1.8'
ext.suffix = '-dev'
ext.plugin_version = '1.8.0'
ext.suffix = ''

repositories {
maven { url 'http://dl.bintray.com/jetbrains/intellij-plugin-service' }
Expand Down
53 changes: 53 additions & 0 deletions docs/_posts/2020-11-12-release-1.8.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
layout: post
title: XQuery IntelliJ Plugin 1.8.0
category: release
---
1. Support parsing XSLT schema types such as `xsl:sequence-type` in `@as`
attributes, attribute (XSLT 1.0+) and text (XSLT 3.0+) value templates.
1. Full expression breakpoint support for debugging MarkLogic queries.
1. Support language injections on various elements, including string literals.
1. Support XML tag tree highlighting in the breadcrumb bar and editor.
1. Auto-complete support for built-in context variables (`err:` in
`CatchClause`, and MarkLogic `cts:` variables).
1. Support inlay parameters and parameter hints for named function reference
based expressions like `f#1(2)`.

XSLT:

1. Support parsing XSLT 1.0, 2.0, and 3.0 schema types.
1. Support XSLT 3.0 text value templates via the `expand-text` attribute.
1. Set the XSLT file icon when the IntelliJ XPath plugin is not enabled.

XPath and XQuery:

1. Further reduce memory usage by removing additional nodes from the PSI tree.
1. Auto-complete support for `CatchClause` variables.

IntelliJ Integration:

1. Support language injections on `StringLiteral`, `DirAttributeValue`,
`DirElemContent`/`DirTextConstructor`, `CDataSection`, and `Pragma`
elements.
1. Support `language=Language` injection marker comments.
1. Use the tag tree highlight colours for XML names in the breadcrumb bar
and editor.

Inlay Parameters and Parameter Hints:

1. Don't add inlay parameter hints when element and attribute node names
match the parameter name.
1. Support expressions like `f#1(2)`, `(f#1(2))`, and `1 => (f#2(2))`.

Saxon:

1. Include ClauseInfo objects in the flat profile table results.

MarkLogic:

1. Support attaching breakpoints to all expressions in the MarkLogic
debugger.
1. Better report `SEC-PRIV` errors when adding a query processor.
1. Fix the URI of the `xqterr` and `err` namespaces.
1. Auto-complete support for `cts:element-walk`, `cts:entity-highlight`,
`cts:highlight`, and `cts:walk` built-in variables.
23 changes: 20 additions & 3 deletions src/main/resources/META-INF/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
<p>XPath and XSLT:</p>
<ol>
<li>XSLT 3.0 XMLSchema support.</li>
<li>Experimental XPath support when the XPathView plugin is disabled.</li>
<li>Experimental XPath support when the IntelliJ XPathView plugin is disabled.</li>
<li>Support parsing XSLT 1.0, 2.0, and 3.0 schema types.</li>
<li>Support XSLT 3.0 text value templates.</li>
</ol>
Expand All @@ -56,12 +56,13 @@
<li>Code completion.</li>
<li>Parameter information tooltips and inlay hints.</li>
<li>Structure view, including on the navigation bar in IntelliJ 2020.1+.</li>
<li>Breadcrumb navigation.</li>
<li>Breadcrumb navigation, including highlighting XML tags in the editor like the IntelliJ XML plugin.</li>
<li>Paired brace matching.</li>
<li>Commenting code.</li>
<li>Integrated function documentation ("Quick Documentation", Ctrl+Q).</li>
<li>Context information (Alt+Q) for XQuery function declarations.</li>
<li>Spellchecking support with bundle dictionaries with XPath, XQuery, and XSLT terms.</li>
<li>Language injection support on various elements, including string literals.</li>
</ol>
<p>IntelliJ Ultimate integration:</p>
<ol>
Expand All @@ -71,7 +72,23 @@
]]></description>

<change-notes><![CDATA[
<h3>Release 1.8-dev:</h3>
<ol>
<li>
Support parsing XSLT schema types such as <code>xsl:sequence-type</code> in <code>@as</code> attributes,
attribute (XSLT 1.0+) and text (XSLT 3.0+) value templates.
</li>
<li>Full expression breakpoint support for debugging MarkLogic queries.</li>
<li>Support language injections on various elements, including string literals.</li>
<li>Support XML tag tree highlighting in the breadcrumb bar and editor.</li>
<li>
Auto-complete support for built-in context variables (<code>err:</code> in <code>CatchClause</code>,
and MarkLogic <code>cts:</code> variables).
</li>
<li>
Support inlay parameters and parameter hints for named function reference based expressions like
<code>f#1(2)</code>.
</li>
</ol>
<p>XSLT:</p>
<ol>
<li>Support parsing XSLT 1.0, 2.0, and 3.0 schema types.</li>
Expand Down

0 comments on commit c943917

Please sign in to comment.