ZigBrains/src/main/resources/META-INF/plugin.xml

112 lines
4.9 KiB
XML
Raw Normal View History

2023-07-29 12:22:51 +02:00
<!-- Plugin Configuration File. Read more: https://plugins.jetbrains.com/docs/intellij/plugin-configuration-file.html -->
<idea-plugin>
<id>com.falsepattern.zigbrains</id>
<name>ZigBrains</name>
<vendor>FalsePattern</vendor>
<depends>com.intellij.modules.platform</depends>
<extensions defaultExtensionNs="com.intellij">
<!-- region LSP4IntelliJ -->
<!-- register intellijLanguageClient as a Service OR as a plugin component (see readme)... -->
<applicationService serviceImplementation="org.wso2.lsp4intellij.IntellijLanguageClient"/>
<!-- register a listener on editor events, required for lsp file sync -->
<editorFactoryListener implementation="org.wso2.lsp4intellij.listeners.LSPEditorListener"/>
<fileDocumentManagerListener implementation="org.wso2.lsp4intellij.listeners.LSPFileDocumentManagerListener"/>
<!-- for displaying notifications by lsp -->
2023-07-31 15:15:09 +02:00
<notificationGroup id="lsp"
displayType="STICKY_BALLOON"/>
2023-07-29 12:22:51 +02:00
<!-- for displaying the statusbar icon -->
<statusBarWidgetFactory implementation="org.wso2.lsp4intellij.statusbar.LSPServerStatusWidgetFactory"
id="org.wso2.lsp4intellij.statusbar.LSPServerStatusWidgetFactory"
2023-07-29 12:25:36 +02:00
order="first"/>
2023-07-29 12:22:51 +02:00
<!-- needed for completion -->
<completion.contributor implementationClass="org.wso2.lsp4intellij.contributors.LSPCompletionContributor"
2023-07-31 15:15:09 +02:00
id="org.wso2.lsp4intellij.contributors.LSPCompletionContributor"
language="any"/>
2023-07-29 12:22:51 +02:00
<!-- needed for completion as well as signature help -->
<typedHandler implementation="org.wso2.lsp4intellij.listeners.LSPTypedHandler"
id="LSPTypedHandler"/>
<!-- needed for code diagnostics -->
2023-07-31 15:15:09 +02:00
<externalAnnotator id="LSPAnnotator"
language="Zig"
2023-07-29 12:22:51 +02:00
implementationClass="org.wso2.lsp4intellij.contributors.annotator.LSPAnnotator"/>
<!-- needed for Workspace Symbols -->
<gotoSymbolContributor implementation="org.wso2.lsp4intellij.contributors.symbol.LSPSymbolContributor"
id="LSPSymbolContributor"/>
<!-- needed for renaming -->
2023-07-31 15:15:09 +02:00
<renameHandler implementation="org.wso2.lsp4intellij.contributors.rename.LSPRenameHandler"
id="LSPRenameHandler"
2023-07-29 12:25:36 +02:00
order="first"/>
<renamePsiElementProcessor implementation="org.wso2.lsp4intellij.contributors.rename.LSPRenameProcessor"
2023-07-31 15:15:09 +02:00
id="LSPRenameProcessor"
order="first"/>
2023-07-29 12:22:51 +02:00
2023-07-29 16:48:28 +02:00
<!-- needed for folding support -->
<lang.foldingBuilder language="Zig"
implementationClass="com.falsepattern.zigbrains.zig.ide.ZigFoldingRangeProvider"
2023-07-31 15:15:09 +02:00
id="LSPFoldingRangeProvider"
order="first"/>
2023-07-29 16:48:28 +02:00
2023-07-29 12:22:51 +02:00
<!-- endregion LSP4IntelliJ -->
<fileType name="Zig File"
implementationClass="com.falsepattern.zigbrains.zig.ide.ZigFileType"
2023-07-29 12:22:51 +02:00
fieldName="INSTANCE"
language="Zig"
extensions="zig"/>
<colorSettingsPage implementation="com.falsepattern.zigbrains.zig.ide.ZigColorSettingsPage"/>
2023-07-29 12:22:51 +02:00
2023-07-29 16:08:19 +02:00
<applicationConfigurable parentId="language"
instance="com.falsepattern.zigbrains.zig.settings.AppSettingsConfigurable"
id="com.falsepattern.zigbrains.zig.settings.AppSettingsConfigurable"
2023-07-29 16:08:19 +02:00
displayName="Zig"/>
2023-07-29 12:22:51 +02:00
<postStartupActivity implementation="com.falsepattern.zigbrains.zig.lsp.ZLSStartupActivity"/>
2023-07-31 15:15:09 +02:00
<notificationGroup displayType="BALLOON"
id="ZigBrains.Nag"/>
2023-07-29 12:22:51 +02:00
</extensions>
<actions>
<!-- region LSP4IntelliJ -->
<!-- needed for hover -->
2023-07-31 15:15:09 +02:00
<action id="org.intellij.sdk.action.QuickDocAction"
class="org.wso2.lsp4intellij.actions.LSPQuickDocAction">
2023-07-29 12:22:51 +02:00
</action>
<!-- needed for find references -->
2023-07-31 15:15:09 +02:00
<action class="org.wso2.lsp4intellij.actions.LSPReferencesAction"
id="LSPFindUsages">
<keyboard-shortcut first-keystroke="shift alt F7"
keymap="$default"/>
2023-07-29 12:22:51 +02:00
</action>
<!-- endregion LSP4IntelliJ -->
</actions>
<applicationListeners>
<!-- region LSP4IntelliJ -->
<!-- required for lsp file sync -->
<listener class="org.wso2.lsp4intellij.listeners.VFSListener"
topic="com.intellij.openapi.vfs.VirtualFileListener"/>
<listener class="org.wso2.lsp4intellij.listeners.LSPProjectManagerListener"
topic="com.intellij.openapi.project.ProjectManagerListener"/>
<!-- endregion LSP4IntelliJ -->
</applicationListeners>
</idea-plugin>