<!-- Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -->
<!-- Plugin Configuration File. Read more: https://plugins.jetbrains.com/docs/intellij/plugin-configuration-file.html -->

<idea-plugin>

  <!-- Unique id for this plugin. Must stay constant for the life of the plugin. -->
  <id>org.intellij.sdk.language</id>

  <!-- Text to display as name on Settings | Plugin page -->
  <name>SDK: Simple Language Sample</name>

  <!-- Product and plugin compatibility requirements -->
  <depends>com.intellij.modules.platform</depends>
  <depends>com.intellij.java</depends>

  <!-- Text to display as description on Settings | Plugin page -->
  <description>
    <![CDATA[
      Demonstrates how to add custom language support to an IntelliJ Platform-based IDE. <br>Defines a new language,
      <i>Simple language</i> with support for syntax highlighting, annotations, code completion, and other features.
      <br>
      See the
      <a href="https://plugins.jetbrains.com/docs/intellij/custom-language-support-tutorial.html">Custom
      Language Tutorial</a> for more information.
    ]]>
  </description>
  <change-notes>
    <![CDATA[
      <ul>
        <li><b>2.0.0</b> Convert to Gradle-based plugin.</li>
        <li><b>1.0.0</b> Release 2018.3 and earlier.</li>
      </ul>
    ]]>
  </change-notes>

  <!-- Text to display as company information on Settings | Plugin page -->
  <vendor url="https://plugins.jetbrains.com">IntelliJ Platform SDK</vendor>

  <extensions defaultExtensionNs="com.intellij">
    <fileType name="Simple File" implementationClass="org.intellij.sdk.language.SimpleFileType" fieldName="INSTANCE"
              language="Simple" extensions="simple"/>
    <lang.parserDefinition language="Simple" implementationClass="org.intellij.sdk.language.SimpleParserDefinition"/>
    <lang.syntaxHighlighterFactory language="Simple"
                                   implementationClass="org.intellij.sdk.language.SimpleSyntaxHighlighterFactory"/>
    <iconProvider implementation="org.intellij.sdk.language.SimplePropertyIconProvider"/>
    <colorSettingsPage implementation="org.intellij.sdk.language.SimpleColorSettingsPage"/>
    <annotator language="JAVA" implementationClass="org.intellij.sdk.language.SimpleAnnotator"/>
    <codeInsight.lineMarkerProvider language="JAVA"
                                    implementationClass="org.intellij.sdk.language.SimpleLineMarkerProvider"/>
    <completion.contributor language="Simple"
                            implementationClass="org.intellij.sdk.language.SimpleCompletionContributor"/>
    <psi.referenceContributor language="JAVA"
                              implementation="org.intellij.sdk.language.SimpleReferenceContributor"/>
    <lang.refactoringSupport language="Simple"
                             implementationClass="org.intellij.sdk.language.SimpleRefactoringSupportProvider"/>
    <lang.findUsagesProvider language="Simple"
                             implementationClass="org.intellij.sdk.language.SimpleFindUsagesProvider"/>
    <lang.foldingBuilder language="JAVA" implementationClass="org.intellij.sdk.language.SimpleFoldingBuilder"/>
    <gotoSymbolContributor implementation="org.intellij.sdk.language.SimpleChooseByNameContributor"/>
    <lang.psiStructureViewFactory language="Simple"
                                  implementationClass="org.intellij.sdk.language.SimpleStructureViewFactory"/>
    <navbar implementation="org.intellij.sdk.language.SimpleStructureAwareNavbar"/>
    <lang.formatter language="Simple" implementationClass="org.intellij.sdk.language.SimpleFormattingModelBuilder"/>
    <codeStyleSettingsProvider implementation="org.intellij.sdk.language.SimpleCodeStyleSettingsProvider"/>
    <langCodeStyleSettingsProvider implementation="org.intellij.sdk.language.SimpleLanguageCodeStyleSettingsProvider"/>
    <lang.commenter language="Simple" implementationClass="org.intellij.sdk.language.SimpleCommenter"/>
    <lang.documentationProvider language="Simple" implementationClass="org.intellij.sdk.language.SimpleDocumentationProvider"/>
    <spellchecker.support language="Simple" implementationClass="org.intellij.sdk.language.SimpleSpellcheckingStrategy"/>
  </extensions>

</idea-plugin>
