-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathplugin.xml
More file actions
113 lines (100 loc) · 10.5 KB
/
Copy pathplugin.xml
File metadata and controls
113 lines (100 loc) · 10.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<idea-plugin>
<id>net.sjrx.intellij.plugins.systemdunitfiles</id>
<name>Unit File Support (systemd)</name>
<version>0.2.1</version>
<vendor email="commits@sjrx.net">Steve Ramage</vendor>
<description><![CDATA[
Adds support for <a href='https://systemd.io/'>systemd</a> <a href="https://www.freedesktop.org/software/systemd/man/latest/systemd.unit.html">unit files</a> which are used to configure (some/most) Linux distributions.
<br/>
<br/>
This plugin adds the following features to the IDE:
<ul>
<li>Syntax highlighting for unit files</li>
<li>Auto-completion for a number of options</li>
<li>Inspections for some errors such as invalid or unknown or deprecated options</li>
<li>Quick fixes</li>
<li>Built-in documentation reference for options</li>
<li>Templates for unit files</li>
</ul>
]]></description>
<change-notes><!-- From gradle, this section must be 40 characters long, so here you go -->0123456789012345678901234567890123456789</change-notes>
<!-- please see http://www.jetbrains.org/intellij/sdk/docs/basics/getting_started/build_number_ranges.html for description -->
<!-- Gradle ignores this value -->
<idea-version since-build="223.0"/>
<!-- Gradle ignores this value -->
<!-- please see http://www.jetbrains.org/intellij/sdk/docs/basics/getting_started/plugin_compatibility.html
on how to target different products -->
<depends>com.intellij.modules.lang</depends>
<extensions defaultExtensionNs="com.intellij">
<lang.parserDefinition language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.parser.UnitFileParserDefinition"/>
<lang.syntaxHighlighterFactory language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.coloring.UnitSyntaxHighlighterFactory"/>
<colorSettingsPage implementation="net.sjrx.intellij.plugins.systemdunitfiles.coloring.settings.UnitFileColorSettings"/>
<fileType name="Automount unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.AutomountFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="automount"/>
<fileType name="Device unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.DeviceFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="device"/>
<fileType name="Mount unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.MountFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="mount"/>
<fileType name="Path unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.PathFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="path"/>
<fileType name="Service unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.ServiceFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="service"/>
<fileType name="Slice unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.SliceFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="slice"/>
<fileType name="Socket unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.SocketFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="socket"/>
<fileType name="Swap unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.SwapFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="swap"/>
<fileType name="Target unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.TargetFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="target"/>
<fileType name="Timer unit configuration for systemd" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.TimerFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="timer"/>
<fileType name="Nspawn container systemd container images" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.NSpawnFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="nspawn"/>
<fileType name="Network Device Configuration (systemd-networkd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.LinkFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="link"/>
<fileType name="Virtual Network Device Configuration (systemd-networkd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.NetDevFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="netdev"/>
<fileType name="Network Configuration (systemd-networkd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.filetypes.NetworkFileType" fieldName="INSTANCE" language="Unit File (systemd)" extensions="network"/>
<lang.commenter language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.commenter.UnitFileCommenter"/>
<lang.documentationProvider language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.documentation.UnitFileDocumentationProvider"/>
<annotator language="Unit File (systemd)"
implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.annotators.InvalidSectionHeaderNameAnnotator"/>
<annotator language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.annotators.LineContinuationCharacterFollowedByWhitespaceAnnotator"/>
<annotator language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.annotators.PropertyIsNotInSectionAnnotator"/>
<annotator language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.annotators.PidFileOptionWarning"/>
<annotator language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.annotators.DeprecatedGrammarValueAnnotator"/>
<annotator language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.annotators.GrammarValueColorAnnotator"/>
<localInspection implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.inspections.UnknownKeyInSectionInspection"
groupPath="Unit files (systemd)" language="Unit File (systemd)"
shortName="UnknownKeyInSection" displayName="Unknown option in section"
groupName="Validity" enabledByDefault="true" level="WARNING"/>
<localInspection implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.inspections.InvalidValueInspection"
groupPath="Unit files (systemd)" language="Unit File (systemd)"
shortName="InvalidValue" displayName="Invalid value for option"
groupName="Validity" enabledByDefault="true" level="WARNING"/>
<localInspection implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.inspections.DeprecatedOptionsInspection"
groupPath="Unit files (systemd)" language="Unit File (systemd)"
shortName="DeprecatedKey" displayName="Deprecated options"
groupName="Deprecation" enabledByDefault="true" level="WARNING"/>
<localInspection implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.inspections.ShellSyntaxInExecDirectiveInspection"
groupPath="Unit files (systemd)" language="Unit File (systemd)"
shortName="ShellSyntaxInExecDirective" displayName="Unsupported shell meta-characters"
groupName="Validity" enabledByDefault="true" level="WARNING"/>
<localInspection implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.inspections.MissingRequiredKeyInspection"
groupPath="Unit files (systemd)" language="Unit File (systemd)"
shortName="MissingRequiredKey" displayName="Missing required key"
groupName="Validity" enabledByDefault="true" level="ERROR"/>
<localInspection implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.inspections.Ipv6CanonicalFormInspection"
groupPath="Unit files (systemd)" language="Unit File (systemd)"
shortName="Ipv6CanonicalForm" displayName="IPv6 address not in canonical form (RFC 5952)"
groupName="Style" enabledByDefault="true" level="WEAK WARNING"/>
<localInspection implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.inspections.IPAddressAllowOnlyInspection"
groupPath="Unit files (systemd)" language="Unit File (systemd)"
shortName="IPAddressAllowOnly" displayName="IPAddressAllow without IPAddressDeny"
groupName="Possible Bugs" enabledByDefault="true" level="WARNING"/>
<completion.contributor language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.completion.UnitFileKeyCompletionContributor"/>
<completion.contributor language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.completion.UnitFileValueCompletionContributor"/>
<completion.contributor language="Unit File (systemd)" implementationClass="net.sjrx.intellij.plugins.systemdunitfiles.completion.UnitFileSectionCompletionContributor"/>
<projectService serviceImplementation="net.sjrx.intellij.plugins.systemdunitfiles.settings.PodmanQuadletSettings"/>
<projectService serviceImplementation="net.sjrx.intellij.plugins.systemdunitfiles.settings.ExperimentalSettings"/>
<projectConfigurable instance="net.sjrx.intellij.plugins.systemdunitfiles.settings.PodmanQuadletConfigurable"
id="net.sjrx.intellij.plugins.systemdunitfiles.settings.PodmanQuadletConfigurable"
displayName="systemd Unit Files"
parentId="tools"/>
<editorNotificationProvider implementation="net.sjrx.intellij.plugins.systemdunitfiles.settings.PodmanNetworkEditorNotificationProvider"/>
</extensions>
<actions>
<!-- Add your actions here -->
<action id="systemd.NewFile" class="net.sjrx.intellij.plugins.systemdunitfiles.actions.NewUnitFileAction">
<add-to-group group-id="NewGroup"/>
</action>
</actions>
</idea-plugin>