This page distinguishes package compatibility from language-feature support. The installed language plugins are authoritative; Bracket Pair Guides does not maintain a separate language allowlist.
The plugin requires com.intellij.modules.platform and
com.intellij.modules.lang. Its generated descriptor has since-build="241"
and no product-specific dependency or upper build limit. Standalone IntelliJ
Platform products based on build 241 or newer can load the plugin when those two
modules are present.
Load compatibility does not establish language support. An IDE can satisfy the module dependencies while its primary language remains unsupported by the matching rule below.
The 0.0.1 ZIP was checked on 2026-08-12 with Plugin Verifier 1.409 against the
official distributions below. Compatible means the package has no binary API,
missing-dependency, or plugin-structure problem in that product. It does not by
itself prove that the product's primary language exposes a matcher this plugin
can use.
| Product | Distribution checked | Package | Primary-language result |
|---|---|---|---|
| IntelliJ IDEA | 2026.2.1, IU-262.9437.185 |
Compatible | Java and Kotlin matchers confirmed; Java, Kotlin, Kotlin script, and JSON also have repository regressions |
| Android Studio | Quail 2 / 2026.1.2.10, AI-261.25134.95.2612.15822958 |
Compatible | Bundled Java and Kotlin matchers confirmed |
| PyCharm | 2026.2.1, PY-262.9437.214 |
Compatible | Python matcher confirmed |
| WebStorm | 2026.2.1, WS-262.9437.145 |
Compatible | JavaScript matcher confirmed; TypeScript is in its derived language family |
| GoLand | 2026.2.1, GO-262.9437.195 |
Compatible | Go matcher confirmed |
| RubyMine | 2026.2.1, RM-262.9437.192 |
Compatible | Ruby, ERB, and RBS matchers confirmed |
| RustRover | 2026.2.1, RR-262.9437.161 |
Compatible | Rust matcher confirmed |
| DataGrip | 2026.2.3, DB-262.9437.163 |
Compatible | SQL matcher confirmed |
| PhpStorm | 2026.2.1, PS-262.9437.196 |
Compatible | PHP's legacy file-type matcher is supported; matcher-backed JavaScript, TypeScript, JSON, and other regions use their token-language matchers |
| CLion | 2026.2.1, CL-262.9437.136 |
Compatible | Default CLion Nova C/C++ is not currently supported: it uses the ReSharper-based engine and exposes no compatible C/C++ language matcher; other matcher-backed regions can still work |
| Rider | 2026.2.0.2, RD-262.8665.400 |
Compatible | C# and ReSharper C++ are not currently supported: no ReSharper backend integration is included; IntelliJ-side matcher-backed regions can still work |
| DataSpell | 2026.1.3, DS-261.26222.84 |
Compatible | Python matcher confirmed, but DataSpell is being retired as a standalone product and 2026.1 is its final release line |
| MPS | 2026.1, MPS-261.25134.779 |
Not claimed | MPS uses projectional model editors rather than the standard text-editor token pipeline; Plugin Verifier 1.409 also could not parse this distribution's module-less product metadata |
The pre-release 0.0.1 package reported two deprecated-API warnings generated by
Kotlin's compatibility bridge for DynamicPluginListener. Version 0.0.2 removes
that bridge; Plugin Verifier reports no deprecated or internal API usage. The
regular release matrix checks IntelliJ Platform builds 241, 242, 243, 251, 252,
253, 261, and 262.
The primary-language result was determined from the matcher registration shipped inside the named distribution. It is capability evidence, not a claim that every language construct or bundled secondary language has received an end-to-end UI test.
- Aqua and AppCode are discontinued. AppCode's final release predates the minimum 241 platform build; Aqua was not included in the current-product verification set.
- Writerside is no longer available as a target IntelliJ Platform product.
- JetBrains Gateway and JetBrains Client are remote-development containers, not standalone code-editor targets for this release.
- Third-party IntelliJ Platform products may satisfy the module dependencies, but they have not been verified and are not claimed as supported.
Recognition asks the platform for the effective matcher of each
editor-highlighter token with BraceMatchingUtil.getBraceMatcher(...). The
platform resolves matchers in this order:
- the token language's
com.intellij.lang.braceMatcher; - the host file type's legacy
com.intellij.braceMatcher; - an associated token-language file type or the host file type's language matcher;
- the platform default matcher.
The platform default matcher is treated as unsupported. Matchers resolved by
the first three steps are used directly, including the TEXT matcher for plain
text and official UserFileType syntax-table bracket tokens.
There is no raw-character scanner or product-specific backend. Layered files can therefore be partially supported: an embedded language region can use its own matcher even when its host template language has different rules. The token language is also part of the pairing group, so one pair cannot start in a host language and close in an embedded language.
A completed background pass that finds no compatible IntelliJ brace matcher shows a file-level warning in every IDE product. The warning is not shown for empty files, user-disabled matcher families, or layered files where at least one enabled matcher-backed region is available. Closing the warning suppresses it for that file type in the current project.
In Rider and CLion, the same warning also links to the Rider/CLion ReSharper backend support request so affected users can register demand with a reaction. Warnings in other products link to this language-support reference.
The platform matcher supplies token classification, pair compatibility, occurrence-specific structural-brace classification, and any contextual callbacks. Bracket Pair Guides still owns the full-document pairing stack, malformed-input recovery, indexes, and guide geometry. Its result is therefore based on the installed language rules but is not claimed to be identical to IntelliJ's boundary highlighter.
| Language or file kind | Support |
|---|---|
| Java, Kotlin, Kotlin script, and JSON | Covered by repository runtime regressions and the installed matcher |
| Other installed languages | Supported when the platform resolves either a language or legacy file-type matcher |
| Derived and embedded languages | Supported for tokens that resolve an inherited, embedded-language, or applicable file-type matcher |
| Platform custom file types | Syntax-table bracket tokens are supported through the platform TEXT matcher |
| Raw plain text | Standard bracket tokens are supported through the host TEXT matcher; arbitrary characters are not scanned |
| Languages with only the legacy file-type matcher | Supported through the platform's file-type matcher resolution, including PHP |
| Pair spanning host and embedded token languages | Unsupported; token-language isolation prevents cross-language pairing |
| Indentation-only blocks | Unsupported; indentation and scope models are not brace pairs |
| Context-dependent angle brackets | Supported only when the installed matcher classifies them in that context |
| ReSharper-only Rider/CLion Nova language engines | Unsupported; the plugin has no ReSharper backend integration |
The Languages list in Settings is the runtime source of truth. Bracket Pair Guides automatically discovers installed language matchers and language-backed legacy file-type matchers, with no product-specific integration. Installing, removing, or updating a language plugin can therefore change the available families and exact bracket pairs.
Repository tests exercise language and legacy file-type matcher discovery, contextual and structural matching, token-language isolation, unsupported tokens, language-family settings, and representative Java, Kotlin, Kotlin script, JSON, XML, plain-text, and custom-file-type inputs. Plugin Verifier checks binary compatibility and IntelliJ API usage; it does not launch the editor or exercise every installed language plugin.
Run the relevant checks described in Contributing after changing the supported IDE range, dependencies, plugin descriptor, or IntelliJ APIs.
Related JetBrains documentation: