Files
openide/RegExpSupport/resources/META-INF/RegExpPlugin.xml
Bas Leijdekkers 143337cad9 RegExp: new "Unnecessary non-capturing group" inspection (IDEA-228664)
GitOrigin-RevId: d6288b1241bf4253030c6f91ecb73f17a6ea4710
2020-10-27 20:06:33 +00:00

83 lines
7.8 KiB
XML

<!--
~ Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-->
<idea-plugin>
<extensionPoints>
<extensionPoint name="regExpLanguageHost" beanClass="com.intellij.openapi.util.ClassExtensionPoint" dynamic="true">
<with attribute="implementationClass" implements="org.intellij.lang.regexp.RegExpLanguageHost"/>
</extensionPoint>
<extensionPoint name="regExpModifierProvider" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
<with attribute="implementationClass" implements="org.intellij.lang.regexp.RegExpModifierProvider"/>
</extensionPoint>
<extensionPoint name="regExpMatcherProvider" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
<with attribute="implementationClass" implements="org.intellij.lang.regexp.RegExpMatcherProvider"/>
</extensionPoint>
<extensionPoint name="regExpCapabilitiesProvider" beanClass="com.intellij.lang.LanguageExtensionPoint" dynamic="true">
<with attribute="implementationClass" implements="org.intellij.lang.regexp.RegExpCapabilitiesProvider"/>
</extensionPoint>
</extensionPoints>
<extensions defaultExtensionNs="com.intellij">
<lang.documentationProvider language="RegExp" implementationClass="org.intellij.lang.regexp.RegExpDocumentationProvider"/>
<completion.contributor language="RegExp" implementationClass="org.intellij.lang.regexp.RegExpCompletionContributor"/>
<fileType name="RegExp" implementationClass="org.intellij.lang.regexp.RegExpFileType" extensions="regexp" fieldName="INSTANCE" language="RegExp"/>
<annotator language="RegExp" implementationClass="org.intellij.lang.regexp.validation.RegExpAnnotator"/>
<lang.parserDefinition language="RegExp" implementationClass="org.intellij.lang.regexp.RegExpParserDefinition"/>
<lang.syntaxHighlighterFactory language="RegExp" implementationClass="org.intellij.lang.regexp.RegExpSyntaxHighlighterFactory"/>
<lang.braceMatcher language="RegExp" implementationClass="org.intellij.lang.regexp.RegExpBraceMatcher"/>
<lang.surroundDescriptor language="RegExp" implementationClass="org.intellij.lang.regexp.surroundWith.SimpleSurroundDescriptor"/>
<colorSettingsPage implementation="org.intellij.lang.regexp.RegExpColorsPage"/>
<basicWordSelectionFilter implementation="org.intellij.lang.regexp.RegExpWordSelectionFilter"/>
<regExpMatcherProvider language="JSRegexp" implementationClass="org.intellij.lang.regexp.ecmascript.EcmaScriptRegExpMatcherProvider"/>
<lang.parserDefinition language="JSRegexp" implementationClass="org.intellij.lang.regexp.ecmascript.EcmaScriptRegexpParserDefinition"/>
<lang.parserDefinition language="JSUnicodeRegexp" implementationClass="org.intellij.lang.regexp.ecmascript.EcmaScriptUnicodeRegexpParserDefinition"/>
<lang.syntaxHighlighterFactory language="JSRegexp"
implementationClass="org.intellij.lang.regexp.ecmascript.EcmaScriptRegExpSyntaxHighlighterFactory"/>
<intentionAction>
<className>org.intellij.lang.regexp.intention.CheckRegExpIntentionAction</className>
<category>RegExp</category>
</intentionAction>
<localInspection language="RegExp" shortName="RegExpRepeatedSpace" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.consecutive.spaces"
implementationClass="org.intellij.lang.regexp.inspection.RepeatedSpaceInspection"/>
<localInspection language="RegExp" shortName="RegExpSingleCharAlternation" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.single.character.alternation"
implementationClass="org.intellij.lang.regexp.inspection.SingleCharAlternationInspection"/>
<localInspection language="RegExp" shortName="RegExpOctalEscape" enabledByDefault="true" level="INFORMATION"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.octal.escape"
implementationClass="org.intellij.lang.regexp.inspection.OctalEscapeInspection"/>
<!--<localInspection groupName="RegExp" language="RegExp" shortName="ReDoS" displayName="Exponential backtracking" enabledByDefault="true"
level="WARNING" implementationClass="org.intellij.lang.regexp.inspection.ReDoSInspection"/>-->
<localInspection language="RegExp" shortName="RegExpDuplicateAlternationBranch" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.duplicate.branch.in.alternation"
implementationClass="org.intellij.lang.regexp.inspection.DuplicateAlternationBranchInspection"/>
<localInspection language="RegExp" shortName="RegExpEscapedMetaCharacter" enabledByDefault="true" level="INFORMATION"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.escaped.meta.character"
implementationClass="org.intellij.lang.regexp.inspection.EscapedMetaCharacterInspection"/>
<localInspection language="RegExp" shortName="RegExpEmptyAlternationBranch" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.empty.branch.in.alternation"
implementationClass="org.intellij.lang.regexp.inspection.EmptyAlternationBranchInspection"/>
<localInspection language="RegExp" shortName="RegExpAnonymousGroup" enabledByDefault="false" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.anonymous.group.or.numeric.back.reference"
implementationClass="org.intellij.lang.regexp.inspection.AnonymousGroupInspection"/>
<localInspection language="RegExp" shortName="RegExpRedundantEscape" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.redundant.character.escape"
implementationClass="org.intellij.lang.regexp.inspection.RedundantEscapeInspection"/>
<localInspection language="RegExp" shortName="RegExpUnexpectedAnchor" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.begin.or.end.anchor.in.unexpected.position"
implementationClass="org.intellij.lang.regexp.inspection.UnexpectedAnchorInspection"/>
<localInspection language="RegExp" shortName="RegExpDuplicateCharacterInClass" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.duplicate.character.in.class"
implementationClass="org.intellij.lang.regexp.inspection.DuplicateCharacterInClassInspection"/>
<localInspection language="RegExp" shortName="RegExpRedundantNestedCharacterClass" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.redundant.nested.character.class"
implementationClass="org.intellij.lang.regexp.inspection.RedundantNestedCharacterClassInspection"/>
<localInspection language="RegExp" shortName="RegExpUnnecessaryNonCapturingGroup" enabledByDefault="true" level="WARNING"
bundle="messages.RegExpBundle" groupKey="inspection.group.name.regexp" key="inspection.name.unnecessary.non.capturing.group"
implementationClass="org.intellij.lang.regexp.inspection.UnnecessaryNonCapturingGroupInspection"/>
</extensions>
</idea-plugin>