Files
openide/plugins/yaml/resources/META-INF/plugin.xml
Nikita Katkov bd617bc548 [github] IJPL-157477 Split language injector to make it stop breaking other language injections into the same fragment
The github expression is now marked non primary language to inject, so other languages would be able to overwrite it

GitOrigin-RevId: 4ace39cba1856a488736238c8450768b87084c5c
2024-08-26 02:24:14 +00:00

180 lines
12 KiB
XML

<idea-plugin package="org.jetbrains.yaml">
<name>YAML</name>
<id>org.jetbrains.plugins.yaml</id>
<vendor>JetBrains</vendor>
<category>Languages</category>
<description><![CDATA[
Provides syntax highlighting and editor features for <a href="https://yaml.org/">YAML</a> language.
]]></description>
<dependencies>
<plugin id="com.intellij.modules.lang"/>
<plugin id="com.intellij.modules.json"/>
</dependencies>
<extensions defaultExtensionNs="com.intellij">
<!--Shared extensions: frontend and backend-->
<langCodeStyleSettingsProvider implementation="org.jetbrains.yaml.settingsSync.YAMLLanguageCodeStyleSettingsProvider"/>
<colorSettingsPage implementation="org.jetbrains.yaml.YAMLColorsPage"/>
<lang.parserDefinition language="yaml" implementationClass="org.jetbrains.yaml.YAMLParserDefinition"/>
<fileType name="YAML" implementationClass="org.jetbrains.yaml.YAMLFileType" fieldName="YML" language="yaml"
extensions="yaml;yml"/>
<projectService serviceImplementation="org.jetbrains.yaml.YAMLElementGenerator"/>
<lang.elementManipulator forClass="org.jetbrains.yaml.psi.impl.YAMLScalarImpl"
implementationClass="org.jetbrains.yaml.psi.impl.YAMLScalarElementManipulator"/>
<lang.elementManipulator forClass="org.jetbrains.yaml.psi.YAMLKeyValue"
implementationClass="org.jetbrains.yaml.psi.impl.YAMLKeyValueKeyManipulator"/>
<elementDescriptionProvider implementation="org.jetbrains.yaml.psi.impl.YAMLElementDescriptionProvider"/>
<inspection.basicVisitor class="org.jetbrains.yaml.psi.YamlPsiElementVisitor"/>
<!--The following extensions must work only on the frontend side in remdev mode-->
<lang.syntaxHighlighterFactory language="yaml" implementationClass="org.jetbrains.yaml.YAMLSyntaxHighlighterFactory"/>
<lang.formatter language="yaml" implementationClass="org.jetbrains.yaml.formatter.YAMLFormattingModelBuilder"/>
<lang.commenter language="yaml" implementationClass="org.jetbrains.yaml.YAMLCommenter"/>
<lang.braceMatcher language="yaml" implementationClass="org.jetbrains.yaml.YAMLPairedBraceMatcher"/>
<lang.whiteSpaceFormattingStrategy language="yaml" implementationClass="org.jetbrains.yaml.formatter.YamlWhiteSpaceFormattingStrategy"/>
<stripTrailingSpacesFilterFactory implementation="org.jetbrains.yaml.formatter.YamlStripTrailingSpacesFilterFactory"/>
<enterHandlerDelegate implementation="org.jetbrains.yaml.smart.YAMLEnterAtIndentHandler" order="first"/>
<typedHandler implementation="org.jetbrains.yaml.formatter.YAMLHyphenTypedHandler"/>
<quoteHandler fileType="YAML" className="org.jetbrains.yaml.smart.YamlQuoteHandler"/>
<statementUpDownMover implementation="org.jetbrains.yaml.smart.YAMLStatementMover" id="yamlStatementMover" order="before line"/>
<lang.foldingBuilder language="yaml" id="YAMLFoldingBuilder" implementationClass="org.jetbrains.yaml.folding.YAMLFoldingBuilder"/>
<!--Remdev backend only-->
<virtualFileCustomDataProvider implementation="org.jetbrains.yaml.editing.YamlCodeStyleSettingsCustomDataSynchronizer"/>
<!-- YAML -->
<additionalTextAttributes scheme="Default" file="colorSchemes/YAMLDefault.xml"/>
<additionalTextAttributes scheme="Darcula" file="colorSchemes/YAMLDarcula.xml"/>
<registryKey key="yaml.injection.async.indent" defaultValue="true"
description="Performs asynchronous indent when typing 'enter' in code injected into YAML"/>
<copyPastePreProcessor implementation="org.jetbrains.yaml.smart.YAMLCopyPasteProcessor"/>
<lang.findUsagesProvider language="yaml" id="yamlFindUsagesProvider" implementationClass="org.jetbrains.yaml.YAMLFindUsagesProvider"/>
<editor.backspaceModeOverride language="yaml" implementationClass="com.intellij.codeInsight.editorActions.SmartBackspaceDisabler"/>
<lang.psiStructureViewFactory language="yaml" implementationClass="org.jetbrains.yaml.structureView.YAMLStructureViewFactory"/>
<qualifiedNameProvider implementation="org.jetbrains.yaml.navigation.YAMLQualifiedNameProvider"/>
<pom.declarationSearcher implementation="org.jetbrains.yaml.navigation.YAMLScalarKeyDeclarationSearcher"/>
<searchEverywhereContributor implementation="org.jetbrains.yaml.navigation.YAMLKeysSearchEverywhereContributor$Factory"/>
<enterHandlerDelegate implementation="org.jetbrains.yaml.smart.YAMLInjectedElementEnterHandler" order="last"/>
<completion.contributor language="yaml"
implementationClass="org.jetbrains.yaml.completion.YamlStructuralKeysCompletionContributor"/>
<codeInsight.wordCompletionFilter language="yaml" implementationClass="org.jetbrains.yaml.completion.YamlWordCompletionFilter"/>
<completion.contributor order="after InplaceRename" language="yaml" id="YamlJsonSchema"
implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaCompletionContributor"/>
<lang.documentationProvider language="yaml" implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaDocumentationProvider"
id="YamlJsonSchemaDocumentationProvider"/>
<gotoDeclarationHandler implementation="org.jetbrains.yaml.schema.YamlJsonSchemaGotoDeclarationHandler" order="last"/>
<breadcrumbsInfoProvider implementation="org.jetbrains.yaml.breadcrumbs.YAMLBreadcrumbsInfoProvider"/>
<readWriteAccessDetector implementation="org.jetbrains.yaml.resolve.YAMLAnchorReadWriteAccessDetector"/>
<renameInputValidator implementation="org.jetbrains.yaml.refactoring.rename.YamlKeyValueRenameInputValidator" order="first"/>
<renameInputValidator implementation="org.jetbrains.yaml.resolve.YAMLAnchorRenameInputValidator" order="first"/>
<lang.refactoringSupport language="yaml" implementationClass="org.jetbrains.yaml.resolve.YAMLRefactoringSupportProvider"/>
<renamePsiElementProcessor implementation="org.jetbrains.yaml.resolve.YAMLRenamePsiElementProcessor"/>
<languageInjectionContributor implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaLanguageInjector" language="yaml" id="yamlJsonSchemaLanguageInjector"/>
<languageInjectionPerformer implementationClass="org.jetbrains.yaml.YamlLanguageInjectionPerformer" language="yaml" id="yamlLanguageInjectionPerformer"/>
<lang.inspectionSuppressor language="yaml" implementationClass="org.jetbrains.yaml.YAMLlInspectionSuppressor"/>
<annotator language="yaml" implementationClass="org.jetbrains.yaml.annotator.YAMLInvalidBlockChildrenErrorAnnotator"/>
<applicationService serviceImplementation="org.jetbrains.yaml.smart.YAMLEditorOptions"/>
<editorSmartKeysConfigurable instance="org.jetbrains.yaml.smart.YAMLSmartOptionsProvider"
id="editor.preferences.yamlOptions"
bundle="messages.YAMLBundle"
key="yaml.smartkeys.option.title"/>
<localInspection language="yaml" bundle="messages.YAMLBundle"
shortName="YAMLUnresolvedAlias"
key="inspections.unresolved.alias.name" level="ERROR"
groupKey="inspections.group.name" enabledByDefault="true"
implementationClass="org.jetbrains.yaml.inspections.YAMLUnresolvedAliasInspection"/>
<localInspection language="yaml" bundle="messages.YAMLBundle"
shortName="YAMLRecursiveAlias"
key="inspections.recursive.alias.name" level="ERROR"
groupKey="inspections.group.name" enabledByDefault="true"
implementationClass="org.jetbrains.yaml.inspections.YAMLRecursiveAliasInspection"/>
<localInspection language="yaml" bundle="messages.YAMLBundle"
shortName="YAMLDuplicatedKeys" level="ERROR"
key="inspections.duplicated.keys.name"
groupKey="inspections.group.name" enabledByDefault="true"
implementationClass="org.jetbrains.yaml.inspections.YAMLDuplicatedKeysInspection"/>
<localInspection language="yaml" bundle="messages.YAMLBundle"
shortName="YAMLUnusedAnchor"
key="inspections.unused.anchor.name" level="WARNING"
groupKey="inspections.group.name" enabledByDefault="true"
implementationClass="org.jetbrains.yaml.inspections.YAMLUnusedAnchorInspection"/>
<localInspection language="yaml" bundle="messages.YAMLBundle"
shortName="YAMLIncompatibleTypes"
key="inspections.types.mismatch.name" level="WARNING"
groupKey="inspections.group.name" enabledByDefault="true"
implementationClass="org.jetbrains.yaml.inspections.YAMLIncompatibleTypesInspection"/>
<localInspection language="yaml" bundle="messages.YAMLBundle"
shortName="YAMLSchemaValidation"
key="inspections.schema.validation.name"
groupKey="inspections.group.name"
enabledByDefault="true"
level="WARNING"
implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaHighlightingInspection"/>
<localInspection language="yaml" bundle="messages.YAMLBundle"
shortName="YAMLSchemaDeprecation"
key="inspections.schema.deprecation.name"
groupKey="inspections.group.name"
enabledByDefault="true"
level="WEAK WARNING"
implementationClass="org.jetbrains.yaml.schema.YamlJsonSchemaDeprecationInspection"/>
<psi.referenceContributor language="yaml" implementation="org.jetbrains.yaml.YAMLWebReferenceContributor"/>
<psi.referenceContributor language="yaml" implementation="org.jetbrains.yaml.YAMLJsonSchemaIdReferenceContributor"/>
<completion.contributor language="yaml" implementationClass="org.jetbrains.yaml.YAMLJsonSchemaInCommentCompletionContributor"/>
<pluginSuggestionProvider implementation="org.jetbrains.yaml.swagger.OpenApiSuggestionProvider"/>
<intentionAction>
<language>yaml</language>
<className>org.jetbrains.yaml.intentions.YAMLAddOptionalPropertiesIntention</className>
<bundleName>messages.YAMLBundle</bundleName>
<categoryKey>yaml.intention.category.name</categoryKey>
</intentionAction>
<intentionAction>
<language>yaml</language>
<className>org.jetbrains.yaml.refactoring.inlineExpandConversion.YAMLExpandCollectionIntentionAction</className>
<bundleName>messages.YAMLBundle</bundleName>
<categoryKey>yaml.intention.category.name</categoryKey>
</intentionAction>
<intentionAction>
<language>yaml</language>
<className>org.jetbrains.yaml.refactoring.inlineExpandConversion.YAMLExpandAllCollectionsInsideIntentionAction</className>
<bundleName>messages.YAMLBundle</bundleName>
<categoryKey>yaml.intention.category.name</categoryKey>
</intentionAction>
<intentionAction>
<language>yaml</language>
<className>org.jetbrains.yaml.refactoring.inlineExpandConversion.YAMLInlineCollectionIntentionAction</className>
<bundleName>messages.YAMLBundle</bundleName>
<categoryKey>yaml.intention.category.name</categoryKey>
</intentionAction>
<fileTypeUsageSchemaDescriptor schema="kubernetes" implementationClass="org.jetbrains.yaml.K8sFileTypeUsageDescriptor"/>
<fileTypeUsageSchemaDescriptor schema="openapi" implementationClass="org.jetbrains.yaml.OpenapiFileTypeUsageDescriptor"/>
<fileTypeUsageSchemaDescriptor schema="swagger" implementationClass="org.jetbrains.yaml.SwaggerFileTypeUsageDescriptor"/>
<fileTypeUsageSchemaDescriptor schema="docker-compose" implementationClass="org.jetbrains.yaml.DockerComposeFileTypeUsageDescriptor"/>
<fileTypeUsageSchemaDescriptor schema="cloudformation" implementationClass="org.jetbrains.yaml.CloudFormationFileTypeUsageDescriptor"/>
</extensions>
<extensions defaultExtensionNs="com.intellij.json">
<jsonLikePsiWalkerFactory implementation="org.jetbrains.yaml.schema.YamlJsonLikePsiWalkerFactory"/>
<jsonSchemaEnabler implementation="org.jetbrains.yaml.schema.YamlJsonEnabler"/>
</extensions>
<extensions defaultExtensionNs="com.intellij.spellchecker">
<support language="yaml" implementationClass="org.jetbrains.yaml.YAMLSpellcheckerStrategy"/>
</extensions>
<extensionPoints>
<extensionPoint qualifiedName="com.intellij.yaml.customStructureViewFactory"
interface="org.jetbrains.yaml.structureView.YAMLCustomStructureViewFactory"
dynamic="true">
</extensionPoint>
</extensionPoints>
</idea-plugin>