<idea-plugin version="2">
  <name>IntelliLang</name>
  <id>org.intellij.intelliLang</id>
  <vendor>JetBrains</vendor>
  <description><![CDATA[User configurable language injection support (originally developed by Sascha Weinreuter sascha.weinreuter@cit.de)]]></description>
  <version>8.0</version>

  <depends optional="true" config-file="intellilang-xpath-support.xml">XPathView</depends>
  <depends optional="true" config-file="intellilang-java-support.xml">com.intellij.modules.java</depends>
  <depends optional="true" config-file="intellilang-javaee-support.xml">com.intellij.javaee</depends>
  <depends optional="true" config-file="intellilang-xml-support.xml">com.intellij.modules.xml</depends>
  <depends optional="true" config-file="intellilang-js-support.xml">JavaScript</depends>
  <depends optional="true" config-file="intellilang-python-support.xml">com.intellij.modules.python</depends>
  <depends optional="true" config-file="intellilang-python-support.xml">Pythonid</depends>

  <extensionPoints>
    <extensionPoint name="languageSupport" interface="org.intellij.plugins.intelliLang.inject.LanguageInjectionSupport"/>
    <extensionPoint name="injectionConfig" beanClass="org.intellij.plugins.intelliLang.inject.LanguageInjectionConfigBean"/>
  </extensionPoints>

  <extensions defaultExtensionNs="com.intellij">
    <errorHandler implementation="com.intellij.diagnostic.ITNReporter" />
    <intentionAction>
      <className>org.intellij.plugins.intelliLang.inject.InjectLanguageAction</className>
      <category>Language Injection</category>
    </intentionAction>
    <intentionAction>
      <className>org.intellij.plugins.intelliLang.inject.UnInjectLanguageAction</className>
      <category>Language Injection</category>
    </intentionAction>
    <intentionAction>
      <className>org.intellij.plugins.intelliLang.inject.EditInjectionSettingsAction</className>
      <category>Language Injection</category>
    </intentionAction>

    <highlightErrorFilter implementation="org.intellij.plugins.intelliLang.inject.FrankensteinErrorFilter"/>
    <daemon.highlightInfoFilter implementation="org.intellij.plugins.intelliLang.inject.FrankensteinErrorFilter"/>

    <projectConfigurable instance="org.intellij.plugins.intelliLang.InjectionsSettingsUI" nonDefaultProject="true"/>

    <multiHostInjector implementation="org.intellij.plugins.intelliLang.inject.CommentLanguageInjector"/>
    <multiHostInjector implementation="org.intellij.plugins.intelliLang.inject.TemporaryPlacesInjector"/>
    <multiHostInjector implementation="org.intellij.plugins.intelliLang.inject.DefaultLanguageInjector" order="last"/>

    <projectService serviceInterface="org.intellij.plugins.intelliLang.inject.TemporaryPlacesRegistry"
                    serviceImplementation="org.intellij.plugins.intelliLang.inject.TemporaryPlacesRegistry"/>
    <applicationService serviceInterface="org.intellij.plugins.intelliLang.Configuration"
                    serviceImplementation="org.intellij.plugins.intelliLang.Configuration$App"/>
    <projectService serviceInterface="org.intellij.plugins.intelliLang.Configuration"
                    serviceImplementation="org.intellij.plugins.intelliLang.Configuration$Prj"/>
    <compileServer.plugin classpath="intellilang-jps-plugin.jar"/>

    <psi.referenceContributor implementation="org.intellij.plugins.intelliLang.references.InjectedReferencesContributor"/>
    <referenceInjector implementation="org.intellij.plugins.intelliLang.references.FileReferenceInjector"/>
    <localInspection implementationClass="org.intellij.plugins.intelliLang.references.InjectedReferencesInspection"
                     enabledByDefault="true" level="ERROR"
                     displayName="Injected References" groupBundle="messages.InspectionsBundle" groupKey="inspection.general.tools.group.name"/>
  </extensions>

</idea-plugin>
