IU-2021.2.1 <aiko@pro.local Merge branch 'master'

Conflicts:
	filetypes.xml
This commit is contained in:
Aiko Mastboom 2021-09-04 09:44:28 +02:00
commit 473c20fdbf
5 changed files with 492 additions and 0 deletions

137
IntelliLang.xml Normal file
View File

@ -0,0 +1,137 @@
<application>
<component name="LanguageInjectionConfiguration">
<injection language="encoding-reference" injector-id="java">
<display-name>Charset Name</display-name>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("forName").withParameters("java.lang.String").definedInClass("java.nio.charset.Charset"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("getBytes").withParameters("java.lang.String").definedInClass("java.lang.String"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("isSupported").withParameters("java.lang.String").definedInClass("java.nio.charset.Charset"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("setCharacterEncoding").withParameters("java.lang.String").definedInClass(psiClass().withQualifiedName(string().oneOf("javax.servlet.ServletResponse", "jakarta.servlet.ServletResponse"))))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("toString").withParameters("java.lang.String").definedInClass("java.io.ByteArrayOutputStream"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("InputStreamReader").withParameters("java.io.InputStream", "java.lang.String").definedInClass("java.io.InputStreamReader"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("OutputStreamWriter").withParameters("java.io.OutputStream", "java.lang.String").definedInClass("java.io.OutputStreamWriter"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("PrintStream").withParameters("java.io.File", "java.lang.String").definedInClass("java.io.PrintStream"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("PrintStream").withParameters("java.lang.String", "java.lang.String").definedInClass("java.io.PrintStream"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("String").withParameters("byte[]", "java.lang.String").definedInClass("java.lang.String"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("createXMLEventReader").withParameters("java.io.InputStream", "java.lang.String").definedInClass("javax.xml.stream.XMLInputFactory"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("createXMLEventWriter").withParameters("java.io.OutputStream", "java.lang.String").definedInClass("javax.xml.stream.XMLInputFactory"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("createXMLStreamReader").withParameters("java.io.InputStream", "java.lang.String").definedInClass("javax.xml.stream.XMLInputFactory"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("createXMLStreamWriter").withParameters("java.io.OutputStream", "java.lang.String").definedInClass("javax.xml.stream.XMLInputFactory"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("decode").withParameters("java.lang.String", "java.lang.String").definedInClass("java.net.URLDecoder"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("encode").withParameters("java.lang.String", "java.lang.String").definedInClass("java.net.URLEncoder"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("newReader").withParameters("java.nio.channels.ReadableByteChannel", "java.lang.String").definedInClass("java.nio.channels.Channels"))]]></place>
<place><![CDATA[psiParameter().ofMethod(1, psiMethod().withName("newWriter").withParameters("java.nio.channels.WritableByteChannel", "java.lang.String").definedInClass("java.nio.channels.Channels"))]]></place>
<place><![CDATA[psiParameter().ofMethod(2, psiMethod().withName("PrintStream").withParameters("java.io.OutputStream", "boolean", "java.lang.String").definedInClass("java.io.PrintStream"))]]></place>
<place><![CDATA[psiParameter().ofMethod(3, psiMethod().withName("String").withParameters("byte[]", "int", "int", "java.lang.String").definedInClass("java.lang.String"))]]></place>
</injection>
<injection language="JSONPath" injector-id="java">
<display-name>JsonAsserter (com.jayway.jsonpath)</display-name>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("assertEquals").definedInClass("com.jayway.jsonassert.JsonAsserter"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("assertNotDefined").definedInClass("com.jayway.jsonassert.JsonAsserter"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("assertNotNull").definedInClass("com.jayway.jsonassert.JsonAsserter"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("assertNull").definedInClass("com.jayway.jsonassert.JsonAsserter"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("assertThat").definedInClass("com.jayway.jsonassert.JsonAsserter"))]]></place>
</injection>
<injection language="RegExp" injector-id="java">
<display-name>Scanner (java.util)</display-name>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("findInLine").withParameters("java.lang.String").definedInClass("java.util.Scanner"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("findWithinHorizon").withParameters("java.lang.String", "int").definedInClass("java.util.Scanner"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("hasNext").withParameters("java.lang.String").definedInClass("java.util.Scanner"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("next").withParameters("java.lang.String").definedInClass("java.util.Scanner"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("skip").withParameters("java.lang.String").definedInClass("java.util.Scanner"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("useDelimiter").withParameters("java.lang.String").definedInClass("java.util.Scanner"))]]></place>
</injection>
<injection language="RegExp" injector-id="java">
<display-name>String (java.lang)</display-name>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("matches").withParameters("java.lang.String").definedInClass("java.lang.String"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("replaceAll").withParameters("java.lang.String", "java.lang.String").definedInClass("java.lang.String"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("replaceFirst").withParameters("java.lang.String", "java.lang.String").definedInClass("java.lang.String"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("split").withParameters("java.lang.String").definedInClass("java.lang.String"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("split").withParameters("java.lang.String", "int").definedInClass("java.lang.String"))]]></place>
</injection>
<injection language="RegExp" injector-id="java">
<display-name>StringSubject (com.google.common.truth)</display-name>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("containsMatch").definedInClass("com.google.common.truth.StringSubject"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("doesNotContainMatch").definedInClass("com.google.common.truth.StringSubject"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("doesNotMatch").definedInClass("com.google.common.truth.StringSubject"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("matches").definedInClass("com.google.common.truth.StringSubject"))]]></place>
</injection>
<injection language="JSONPath" injector-id="java">
<display-name>WriteContext (com.jayway.jsonpath)</display-name>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("add").definedInClass("com.jayway.jsonpath.WriteContext"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("delete").definedInClass("com.jayway.jsonpath.WriteContext"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("map").definedInClass("com.jayway.jsonpath.WriteContext"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("put").definedInClass("com.jayway.jsonpath.WriteContext"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("renameKey").definedInClass("com.jayway.jsonpath.WriteContext"))]]></place>
<place><![CDATA[psiParameter().ofMethod(0, psiMethod().withName("set").definedInClass("com.jayway.jsonpath.WriteContext"))]]></place>
</injection>
<injection language="JavaScript" injector-id="ruby">
<display-name>Heredoc JavaScript</display-name>
<place><![CDATA[heredocElement("JAVASCRIPT")]]></place>
<place><![CDATA[heredocElement("JS")]]></place>
</injection>
<injection language="ruby" injector-id="ruby">
<display-name>Heredoc Ruby</display-name>
<place><![CDATA[heredocElement("RB")]]></place>
<place><![CDATA[heredocElement("RUBY")]]></place>
</injection>
<injection language="JSON" injector-id="sql">
<display-name>ClickHouse JSON</display-name>
<place><![CDATA[sqlElement().forDialects("ClickHouse").functionArgument(0, sqlFunctionCall().name("visitParamHas", "visitParamExtractUInt", "visitParamExtractInt", "visitParamExtractFloat", "visitParamExtractBool", "visitParamExtractRaw", "visitParamExtractString").params(sqlExpressions().count(2)))]]></place>
<place><![CDATA[sqlElement().forDialects("ClickHouse").insertWithFormatInput("JSON")]]></place>
</injection>
<injection language="JSON" injector-id="sql">
<display-name>Oracle JSON</display-name>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(0, -1, 1, sqlFunctionCall().name("json_array"))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(0, sqlFunctionCall().name("json_query", "json_value", "json_array_agg"))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(0, sqlFunctionCall().name("json_table"))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, -1, 2, sqlFunctionCall().name("json_object"))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("json_object_agg"))]]></place>
</injection>
<injection language="RegExp" injector-id="sql">
<display-name>Oracle RegExp</display-name>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("regexp_count").params(sqlExpressions().count(2, 4)))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("regexp_instr").params(sqlExpressions().count(2, 7)))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("regexp_like").params(sqlExpressions().count(2, 3)))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("regexp_replace", "regexp_substr").params(sqlExpressions().count(2, 6)))]]></place>
</injection>
<injection language="XPath2" injector-id="sql">
<display-name>Oracle XPath</display-name>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(0, sqlFunctionCall().name("xmlquery", "xmlexists"))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(0, sqlFunctionCall().name("xmltable"))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, -2, 2, sqlFunctionCall().name("updatexml"))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("appendchildxml", "insertxmlafter", "insertxmlbefore").params(sqlExpressions().count(3, 4)))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("extract", "extractvalue", "deletexml", "existsnode").params(sqlExpressions().count(2, 3)))]]></place>
<place><![CDATA[sqlElement().forDialects("Oracle").functionArgument(1, sqlFunctionCall().name("insertchildxml", "insertchildxmlafter", "insertchildxmlbefore").params(sqlExpressions().count(4, 5)))]]></place>
</injection>
<injection language="RegExp" injector-id="sql">
<display-name>PostgreSQL RegExp</display-name>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").binaryExpressionArgument(1, sqlBinaryExpression().left(sqlExpression().withType("text")).operationNames("~", "~*", "!~", "!~*"))]]></place>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(1, sqlFunctionCall().name("regexp_replace").params(sqlExpressions().count(3, 4)))]]></place>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(1, sqlFunctionCall().name("substr", "substring", "regexp_match", "regexp_matches", "regexp_split_to_array", "regexp_split_to_table").params(sqlExpressions().count(2, 3)))]]></place>
</injection>
<injection language="XPath2" injector-id="sql">
<display-name>PostgreSQL XPath</display-name>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(0, sqlFunctionCall().name("xmlexists", "xmltable").params(sqlExpressions().count(2)))]]></place>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(0, sqlFunctionCall().name("xpath", "xpath_exists").params(sqlExpressions().count(2, 3)))]]></place>
</injection>
<injection language="PostgreSQL" injector-id="sql">
<display-name>PostgreSQL dblink</display-name>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(0, sqlFunctionCall().name("dblink", "dblink_exec").params(sqlExpressions().count(1, 2).atOpt(1, sqlExpression().withType("boolean"))))]]></place>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(1, sqlFunctionCall().name("dblink", "dblink_exec").params(sqlExpressions().count(2, 3)))]]></place>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(1, sqlFunctionCall().name("dblink_open").params(sqlExpressions().count(2, 3).atOpt(2, sqlExpression().withType("boolean"))))]]></place>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(1, sqlFunctionCall().name("dblink_send_query").params(sqlExpressions().count(2)))]]></place>
<place><![CDATA[sqlElement().forDialects("PostgreSQL").functionArgument(2, sqlFunctionCall().name("dblink_open").params(sqlExpressions().count(3, 4)))]]></place>
</injection>
<injection language="XML" injector-id="sql">
<display-name>Sybase XML</display-name>
<place><![CDATA[sqlElement().forDialects("Sybase").binaryExpressionArgument(1, sqlBinaryExpression().operation(leafTokens("xmltest").or("not", "xmltest")))]]></place>
<place><![CDATA[sqlElement().forDialects("Sybase").functionArgument(0, sqlFunctionCall().name("xmlparse", "xmlvalidate"))]]></place>
<place><![CDATA[sqlElement().forDialects("Sybase").functionArgument(1, sqlFunctionCall().name("xmlextract"))]]></place>
</injection>
<injection language="XPath2" injector-id="sql">
<display-name>Sybase XPath</display-name>
<place><![CDATA[sqlElement().forDialects("Sybase").binaryExpressionArgument(0, sqlBinaryExpression().operation(leafTokens("xmltest").or("not", "xmltest")))]]></place>
<place><![CDATA[sqlElement().forDialects("Sybase").functionArgument(0, sqlFunctionCall().name("xmlextract"))]]></place>
</injection>
</component>
</application>

View File

@ -27,6 +27,12 @@
<option name="IGNORE_POLICY" value="TRIM_WHITESPACES" /> <option name="IGNORE_POLICY" value="TRIM_WHITESPACES" />
</PlaceSettings> </PlaceSettings>
</entry> </entry>
<entry key="CommitDialog">
<PlaceSettings>
<option name="EXPAND_BY_DEFAULT" value="false" />
<option name="READ_ONLY_LOCK" value="false" />
</PlaceSettings>
</entry>
<entry key="Default"> <entry key="Default">
<PlaceSettings> <PlaceSettings>
<option name="IGNORE_POLICY" value="IGNORE_WHITESPACES" /> <option name="IGNORE_POLICY" value="IGNORE_WHITESPACES" />

View File

@ -3,6 +3,21 @@
<extensionMap> <extensionMap>
<mapping pattern="setenv" type="AUTO_DETECTED" /> <mapping pattern="setenv" type="AUTO_DETECTED" />
<mapping ext="aiko" type="AUTO_DETECTED" /> <mapping ext="aiko" type="AUTO_DETECTED" />
<mapping pattern="jest.config" type="JSON" />
<mapping pattern=".eslintrc" type="JSON" />
<mapping pattern="bowerrc" type="JSON" />
<mapping pattern=".stylelintrc" type="JSON" />
<mapping pattern=".babelrc" type="JSON" />
<mapping ext="jsb3" type="JSON" />
<mapping ext="jsb2" type="JSON" />
<mapping pattern=".stylelintignore" type="PLAIN_TEXT" />
<mapping pattern=".jshintignore" type="PLAIN_TEXT" />
<mapping pattern=".nvmrc" type="PLAIN_TEXT" />
<mapping pattern=".yarnrc" type="PLAIN_TEXT" />
<mapping pattern=".npmignore" type="PLAIN_TEXT" />
<mapping pattern=".npmrc" type="PLAIN_TEXT" />
<mapping pattern=".node-version" type="PLAIN_TEXT" />
<mapping pattern=".eslintignore" type="PLAIN_TEXT" />
<mapping ext="space.kts" type="Kotlin" /> <mapping ext="space.kts" type="Kotlin" />
<mapping ext="main.kts" type="Kotlin" /> <mapping ext="main.kts" type="Kotlin" />
<mapping pattern="gemfile.lock" type="PLAIN_TEXT" /> <mapping pattern="gemfile.lock" type="PLAIN_TEXT" />

View File

@ -4,6 +4,7 @@
</component> </component>
<component name="Registry"> <component name="Registry">
<entry key="ide.mac.allowDarkWindowDecorations" value="true" /> <entry key="ide.mac.allowDarkWindowDecorations" value="true" />
<entry key="documentation.show.toolbar" value="true" />
</component> </component>
<component name="StatusBar"> <component name="StatusBar">
<option name="widgets"> <option name="widgets">

333
pluginAdvertiser.xml Normal file
View File

@ -0,0 +1,333 @@
<application>
<component name="PluginFeatureService">
<option name="features">
<map>
<entry key="com.intellij.configurationType">
<value>
<FeaturePluginsList>
<option name="featureMap">
<map>
<entry key="Application">
<value>
<FeaturePluginData displayName="Application" pluginName="Java" pluginId="com.intellij.java" bundled="true" />
</value>
</entry>
<entry key="CapistranoRunConfigurationType">
<value>
<FeaturePluginData displayName="Capistrano" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="CargoCommandRunConfiguration">
<value>
<FeaturePluginData displayName="Cargo" pluginName="Rust" pluginId="org.rust.lang" />
</value>
</entry>
<entry key="ChromiumRemoteDebugType">
<value>
<FeaturePluginData displayName="Attach to Node.js/Chrome" pluginName="JavaScript Debugger" pluginId="JavaScriptDebugger" bundled="true" />
</value>
</entry>
<entry key="CommandRunConfigurationType">
<value>
<FeaturePluginData displayName="Gem Command" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="CompoundRunConfigurationType">
<value>
<FeaturePluginData displayName="Compound" pluginName="IDEA CORE" pluginId="com.intellij" bundled="true" />
</value>
</entry>
<entry key="DatabaseScript">
<value>
<FeaturePluginData displayName="Database Script" pluginName="Database Tools and SQL" pluginId="com.intellij.database" bundled="true" />
</value>
</entry>
<entry key="ELM_TEST_RUN_CONFIGURATION">
<value>
<FeaturePluginData displayName="Elm Test" pluginName="Elm" pluginId="org.elm.klazuka" />
</value>
</entry>
<entry key="FirefoxRemoteDebugType">
<value>
<FeaturePluginData displayName="Firefox Remote" pluginName="JavaScript Debugger" pluginId="JavaScriptDebugger" bundled="true" />
</value>
</entry>
<entry key="HttpClient.HttpRequestRunConfigurationType">
<value>
<FeaturePluginData displayName="HTTP Request" pluginName="HTTP Client" pluginId="com.jetbrains.restClient" bundled="true" />
</value>
</entry>
<entry key="IrbRunConfigurationType">
<value>
<FeaturePluginData displayName="Ruby Console" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="JUnit">
<value>
<FeaturePluginData displayName="JUnit" pluginName="JUnit" pluginId="JUnit" bundled="true" />
</value>
</entry>
<entry key="JarApplication">
<value>
<FeaturePluginData displayName="JAR Application" pluginName="Java" pluginId="com.intellij.java" bundled="true" />
</value>
</entry>
<entry key="Java Scratch">
<value>
<FeaturePluginData displayName="Java Scratch" pluginName="Java" pluginId="com.intellij.java" bundled="true" />
</value>
</entry>
<entry key="JavaScriptNodeJsTraceType">
<value>
<FeaturePluginData displayName="Spy-js for Node.js" pluginName="Spy-js" pluginId="spy-js" bundled="true" />
</value>
</entry>
<entry key="JavaScriptTestRunnerJest">
<value>
<FeaturePluginData displayName="Jest" pluginName="JavaScript and TypeScript" pluginId="JavaScript" bundled="true" />
</value>
</entry>
<entry key="JavaScriptTestRunnerProtractor">
<value>
<FeaturePluginData displayName="Protractor" pluginName="JavaScript and TypeScript" pluginId="JavaScript" bundled="true" />
</value>
</entry>
<entry key="JavaScriptTraceType">
<value>
<FeaturePluginData displayName="Spy-js" pluginName="Spy-js" pluginId="spy-js" bundled="true" />
</value>
</entry>
<entry key="JavascriptDebugType">
<value>
<FeaturePluginData displayName="JavaScript Debug" pluginName="JavaScript Debugger" pluginId="JavaScriptDebugger" bundled="true" />
</value>
</entry>
<entry key="MixESpecRunConfigurationType">
<value>
<FeaturePluginData displayName="Elixir Mix ESpec" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
<entry key="MixExUnitRunConfigurationType">
<value>
<FeaturePluginData displayName="Elixir Mix ExUnit" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
<entry key="MixRunConfigurationType">
<value>
<FeaturePluginData displayName="Elixir Mix" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
<entry key="NodeJSConfigurationType">
<value>
<FeaturePluginData displayName="Node.js" pluginName="Node.js" pluginId="NodeJS" bundled="true" />
</value>
</entry>
<entry key="NodeWebKit">
<value>
<FeaturePluginData displayName="NW.js" pluginName="JavaScript Debugger" pluginId="JavaScriptDebugger" bundled="true" />
</value>
</entry>
<entry key="NodeunitConfigurationType">
<value>
<FeaturePluginData displayName="Nodeunit" pluginName="Node.js" pluginId="NodeJS" bundled="true" />
</value>
</entry>
<entry key="RSpecRunConfigurationType">
<value>
<FeaturePluginData displayName="RSpec" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="RackRunConfigurationType">
<value>
<FeaturePluginData displayName="Rack" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="RailsRunConfigurationType">
<value>
<FeaturePluginData displayName="Rails" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="RakeRunConfigurationType">
<value>
<FeaturePluginData displayName="Rake" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="ReactNative">
<value>
<FeaturePluginData displayName="React Native" pluginName="JavaScript Debugger" pluginId="JavaScriptDebugger" bundled="true" />
</value>
</entry>
<entry key="Remote">
<value>
<FeaturePluginData displayName="Remote JVM Debug" pluginName="Java" pluginId="com.intellij.java" bundled="true" />
</value>
</entry>
<entry key="RubyRemoteDebugConfigurationType">
<value>
<FeaturePluginData displayName="Ruby remote debug" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="RubyRunConfigurationType">
<value>
<FeaturePluginData displayName="Ruby" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="ShConfigurationType">
<value>
<FeaturePluginData displayName="Shell Script" pluginName="Shell Script" pluginId="com.jetbrains.sh" bundled="true" />
</value>
</entry>
<entry key="SpaceRunConfiguration">
<value>
<FeaturePluginData displayName="Space Task" pluginName="Space" pluginId="com.jetbrains.space" bundled="true" />
</value>
</entry>
<entry key="SporkRunConfigurationType">
<value>
<FeaturePluginData displayName="Spork DRb" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="SwaggerCodegen">
<value>
<FeaturePluginData displayName="Swagger Codegen" pluginName="OpenAPI Specifications" pluginId="com.intellij.swagger" bundled="true" />
</value>
</entry>
<entry key="TSqltConfigurationType">
<value>
<FeaturePluginData displayName="tSQLt Test" pluginName="Database Tools and SQL" pluginId="com.intellij.database" bundled="true" />
</value>
</entry>
<entry key="TestUnitRunConfigurationType">
<value>
<FeaturePluginData displayName="Test::Unit/Shoulda/Minitest" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="UtPlSqlConfigurationType">
<value>
<FeaturePluginData displayName="utPLSQL Test" pluginName="Database Tools and SQL" pluginId="com.intellij.database" bundled="true" />
</value>
</entry>
<entry key="WasmPackCommandRunConfiguration">
<value>
<FeaturePluginData displayName="wasm-pack" pluginName="Rust" pluginId="org.rust.lang" />
</value>
</entry>
<entry key="XSLT">
<value>
<FeaturePluginData displayName="XSLT" pluginName="XPathView + XSLT" pluginId="XPathView" bundled="true" />
</value>
</entry>
<entry key="ZeusRunConfigurationType">
<value>
<FeaturePluginData displayName="Zeus Server" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="docker-deploy">
<value>
<FeaturePluginData displayName="Docker" pluginName="IDEA CORE" pluginId="com.intellij" bundled="true" />
</value>
</entry>
<entry key="js.build_tools.grunt">
<value>
<FeaturePluginData displayName="Grunt.js" pluginName="JavaScript and TypeScript" pluginId="JavaScript" bundled="true" />
</value>
</entry>
<entry key="js.build_tools.gulp">
<value>
<FeaturePluginData displayName="Gulp.js" pluginName="JavaScript and TypeScript" pluginId="JavaScript" bundled="true" />
</value>
</entry>
<entry key="js.build_tools.npm">
<value>
<FeaturePluginData displayName="npm" pluginName="JavaScript and TypeScript" pluginId="JavaScript" bundled="true" />
</value>
</entry>
<entry key="mocha-javascript-test-runner">
<value>
<FeaturePluginData displayName="Mocha" pluginName="Node.js" pluginId="NodeJS" bundled="true" />
</value>
</entry>
<entry key="org.elixir_lang.distillery.configuration.Type">
<value>
<FeaturePluginData displayName="Distillery Release CLI" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
<entry key="org.elixir_lang.elixir.configuration.ConfigurationType">
<value>
<FeaturePluginData displayName="Elixir" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
<entry key="org.elixir_lang.iex.configuration.ConfigurationType">
<value>
<FeaturePluginData displayName="IEx" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
<entry key="org.elixir_lang.iex.mix.configuration.Type">
<value>
<FeaturePluginData displayName="IEx Mix" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
</map>
</option>
</FeaturePluginsList>
</value>
</entry>
<entry key="com.intellij.facetType">
<value>
<FeaturePluginsList>
<option name="featureMap">
<map>
<entry key="Elixir">
<value>
<FeaturePluginData displayName="Elixir" pluginName="Elixir" pluginId="org.elixir_lang" />
</value>
</entry>
<entry key="JRUBY">
<value>
<FeaturePluginData displayName="JRuby" pluginName="org.jetbrains.plugins.ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="JRailsFacetType">
<value>
<FeaturePluginData displayName="JRuby on Rails" pluginName="org.jetbrains.plugins.ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="RailsFacetType">
<value>
<FeaturePluginData displayName="Ruby on Rails" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
<entry key="gem">
<value>
<FeaturePluginData displayName="Gem" pluginName="Ruby" pluginId="org.jetbrains.plugins.ruby" />
</value>
</entry>
</map>
</option>
</FeaturePluginsList>
</value>
</entry>
<entry key="com.intellij.packaging.artifacts.ArtifactType">
<value>
<FeaturePluginsList>
<option name="featureMap">
<map>
<entry key="jar">
<value>
<FeaturePluginData displayName="JAR" pluginName="Java" pluginId="com.intellij.java" bundled="true" />
</value>
</entry>
<entry key="plain">
<value>
<FeaturePluginData displayName="Other" pluginName="Java" pluginId="com.intellij.java" bundled="true" />
</value>
</entry>
</map>
</option>
</FeaturePluginsList>
</value>
</entry>
</map>
</option>
</component>
</application>