Skip to content

Commit

Permalink
Create separate IDE customization module, add lsp config for svetle, …
Browse files Browse the repository at this point in the history
…astro and golang

Signed-off-by: Konstantin Zaitsev <[email protected]>
  • Loading branch information
kosz78 committed Dec 17, 2024
1 parent 031a29f commit bfae57c
Show file tree
Hide file tree
Showing 50 changed files with 267 additions and 25 deletions.
7 changes: 4 additions & 3 deletions .idea/inspectionProfiles/idea_default.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions .idea/runConfigurations/Huly_Code.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions build/conf/hulycode/common/bin/appletviewer.policy
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
grant {
permission java.security.AllPermission;
permission java.net.SocketPermission "*", "accept, connect, listen, resolve";
};



Binary file added build/conf/hulycode/linux/images/icon_CE_128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added build/conf/hulycode/mac/images/communityEAP.icns
Binary file not shown.
Binary file not shown.
Binary file added build/conf/hulycode/mac/images/idea.icns
Binary file not shown.
Binary file added build/conf/hulycode/win/images/headerlogo.bmp
Binary file not shown.
Binary file added build/conf/hulycode/win/images/idea_CE.ico
Binary file not shown.
Binary file added build/conf/hulycode/win/images/idea_CE_EAP.ico
Binary file not shown.
Binary file added build/conf/hulycode/win/images/install.ico
Binary file not shown.
Binary file added build/conf/hulycode/win/images/logo.bmp
Binary file not shown.
Binary file added build/conf/hulycode/win/images/uninstall.ico
Binary file not shown.
30 changes: 17 additions & 13 deletions build/src/org/jetbrains/intellij/build/HulyProperties.kt
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ val HULY_BUNDLED_PLUGINS: PersistentList<String> = DEFAULT_BUNDLED_PLUGINS + seq
"intellij.performanceTesting",
"intellij.turboComplete",
"redhat.lsp4ij",
"hulylabs.hulycode.lang-configurator",
"hulylabs.langconfigurator",
)

internal suspend fun createHulyBuildContext(
Expand Down Expand Up @@ -104,14 +104,14 @@ open class HulyProperties(private val communityHomeDir: Path) : BaseIdeaProperti

init {
platformPrefix = "Huly"
applicationInfoModule = "intellij.idea.community.customization"
applicationInfoModule = "hulylabs.intellij.customization"
scrambleMainJar = false
useSplash = true
buildCrossPlatformDistribution = true

productLayout.productImplementationModules = listOf(
"intellij.platform.starter",
"intellij.idea.community.customization",
"hulylabs.intellij.customization",
)
productLayout.bundledPluginModules = HULY_BUNDLED_PLUGINS + sequenceOf("intellij.vcs.github.community")

Expand All @@ -125,6 +125,10 @@ open class HulyProperties(private val communityHomeDir: Path) : BaseIdeaProperti
spec.withModuleLibrary("eclipse.lsp4j", "redhat.lsp4ij", "org.eclipse.lsp4j-0.21.1.jar")
spec.withModuleLibrary("vladsch.flexmark", "redhat.lsp4ij", "flexmark-0.64.8.jar")
},
pluginAuto("hulylabs.langconfigurator") { spec ->
spec.withModuleLibrary("tukaani.xz", "hulylabs.langconfigurator", "xz-1.10.jar")
spec.withModuleLibrary("esotericsoftware.yamlbeans", "hulylabs.langconfigurator", "yamlbeans-1.17.jar")
},
))

productLayout.addPlatformSpec { layout, _ ->
Expand Down Expand Up @@ -168,9 +172,9 @@ open class HulyProperties(private val communityHomeDir: Path) : BaseIdeaProperti

protected open inner class HulyCodeWindowsDistributionCustomizer : WindowsDistributionCustomizer() {
init {
icoPath = "${communityHomeDir}/build/conf/ideaCE/win/images/idea_CE.ico"
icoPathForEAP = "${communityHomeDir}/build/conf/ideaCE/win/images/idea_CE_EAP.ico"
installerImagesPath = "${communityHomeDir}/build/conf/ideaCE/win/images"
icoPath = "${communityHomeDir}/build/conf/hulycode/win/images/idea_CE.ico"
icoPathForEAP = "${communityHomeDir}/build/conf/hulycode/win/images/idea_CE_EAP.ico"
installerImagesPath = "${communityHomeDir}/build/conf/hulycode/win/images"
fileAssociations = listOf("ts", "rs", "toml", "zig")
}

Expand All @@ -185,8 +189,8 @@ open class HulyProperties(private val communityHomeDir: Path) : BaseIdeaProperti

protected open inner class HulyCodeLinuxDistributionCustomizer : LinuxDistributionCustomizer() {
init {
iconPngPath = "${communityHomeDir}/build/conf/ideaCE/linux/images/icon_CE_128.png"
iconPngPathForEAP = "${communityHomeDir}/build/conf/ideaCE/linux/images/icon_CE_EAP_128.png"
iconPngPath = "${communityHomeDir}/build/conf/hulycode/linux/images/icon_CE_128.png"
iconPngPathForEAP = "${communityHomeDir}/build/conf/hulycode/linux/images/icon_CE_EAP_128.png"
snapName = "intellij-idea-community"
snapDescription =
"The most intelligent Java IDE. Every aspect of IntelliJ IDEA is specifically designed to maximize developer productivity. " +
Expand All @@ -204,13 +208,13 @@ open class HulyProperties(private val communityHomeDir: Path) : BaseIdeaProperti

protected open inner class HulyCodeMacDistributionCustomizer : MacDistributionCustomizer() {
init {
icnsPath = "${communityHomeDir}/build/conf/ideaCE/mac/images/idea.icns"
icnsPathForEAP = "${communityHomeDir}/build/conf/ideaCE/mac/images/communityEAP.icns"
icnsPath = "${communityHomeDir}/build/conf/hulycode/mac/images/idea.icns"
icnsPathForEAP = "${communityHomeDir}/build/conf/hulycode/mac/images/communityEAP.icns"
urlSchemes = listOf("huly-code")
associateIpr = true
fileAssociations = FileAssociation.from("java", "groovy", "kt", "kts")
bundleIdentifier = "engineering.hc.huly.code"
dmgImagePath = "${communityHomeDir}/build/conf/ideaCE/mac/images/dmg_background.tiff"
fileAssociations = FileAssociation.from("ts", "rs", "toml", "zig")
bundleIdentifier = "hulylabs.huly.code"
dmgImagePath = "${communityHomeDir}/build/conf/hulycode/mac/images/dmg_background.tiff"
}

override fun getRootDirectoryName(appInfo: ApplicationInfoProperties, buildNumber: String): String {
Expand Down
14 changes: 14 additions & 0 deletions hulycode-resources/hulylabs.intellij.customization.iml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<module relativePaths="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/resources" type="java-resource" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="intellij.platform.ide.impl" scope="RUNTIME" />
<orderEntry type="module" module-name="intellij.idea.customization.base" scope="RUNTIME" />
<orderEntry type="module" module-name="intellij.platform.experiment" scope="RUNTIME" />
</component>
</module>
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
<idea-plugin xmlns:xi="http://www.w3.org/2001/XInclude">
<xi:include href="/META-INF/JavaIdePlugin.xml"/>
<xi:include href="/META-INF/tips-intellij-idea-community.xml"/>

<module value="com.intellij.modules.idea"/>
<module value="com.intellij.modules.idea.community"/>
<!--<module value="com.intellij.modules.java-capable"/>-->
<!--<module value="com.intellij.modules.python-core-capable"/> &lt;!&ndash; Python plugin can be installed &ndash;&gt;-->
<!--<module value="com.intellij.modules.python-in-non-pycharm-ide-capable"/> &lt;!&ndash; Enable Non-Pycharm-IDE support in Python plugin &ndash;&gt;-->
<content>
<module name="intellij.platform.coverage"/>
<module name="intellij.platform.coverage.agent"/>
<module name="intellij.xml.xmlbeans"/>
<module name="intellij.platform.ide.newUiOnboarding"/>
<module name="intellij.platform.ide.newUsersOnboarding"/>
<module name="intellij.ide.startup.importSettings"/>
<!--<module name="intellij.kotlin.onboarding-promoter"/>-->
<module name="intellij.idea.customization.base"/>
<module name="intellij.platform.tips"/>
</content>
Expand Down
1 change: 1 addition & 0 deletions hulycode-resources/resources/icon-robots.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
skip: *
23 changes: 23 additions & 0 deletions hulycode-resources/resources/idea-ce-eap.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
24 changes: 24 additions & 0 deletions hulycode-resources/resources/idea-ce-eap_16.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit bfae57c

Please sign in to comment.