diff --git a/.idea/modules.xml b/.idea/modules.xml
index 724ea69bb8d4..4fadd4309966 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -869,6 +869,7 @@
+
diff --git a/build/groovy/org/jetbrains/intellij/build/IdeaCommunityProperties.groovy b/build/groovy/org/jetbrains/intellij/build/IdeaCommunityProperties.groovy
index 690dc3c1ad4c..23ba08468454 100644
--- a/build/groovy/org/jetbrains/intellij/build/IdeaCommunityProperties.groovy
+++ b/build/groovy/org/jetbrains/intellij/build/IdeaCommunityProperties.groovy
@@ -20,7 +20,7 @@ class IdeaCommunityProperties extends BaseIdeaProperties {
useSplash = true
buildCrossPlatformDistribution = true
- productLayout.productImplementationModules = ["intellij.platform.main"]
+ productLayout.productImplementationModules = ["intellij.platform.main"] + NotebookProperties.NOTEBOOK_IMPLEMENTATION_MODULES
productLayout.additionalPlatformJars.put(BaseLayout.PLATFORM_JAR, "intellij.idea.community.resources")
productLayout.bundledPluginModules += BUNDLED_PLUGIN_MODULES
productLayout.prepareCustomPluginRepositoryForPublishedPlugins = false
diff --git a/build/groovy/org/jetbrains/intellij/build/NotebookProperties.groovy b/build/groovy/org/jetbrains/intellij/build/NotebookProperties.groovy
new file mode 100644
index 000000000000..7d693da4c122
--- /dev/null
+++ b/build/groovy/org/jetbrains/intellij/build/NotebookProperties.groovy
@@ -0,0 +1,12 @@
+// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
+package org.jetbrains.intellij.build
+
+import groovy.transform.CompileStatic
+
+@CompileStatic
+class NotebookProperties {
+ /** Common, language-agnostic modules for notebook support (like for Jupyter, or R Markdown). */
+ static final List NOTEBOOK_IMPLEMENTATION_MODULES = [
+ "intellij.visualisation",
+ ]
+}
diff --git a/java/ide-customization/intellij.java.ide.customization.iml b/java/ide-customization/intellij.java.ide.customization.iml
index 6db09bd7a9f8..6f0993f079ae 100644
--- a/java/ide-customization/intellij.java.ide.customization.iml
+++ b/java/ide-customization/intellij.java.ide.customization.iml
@@ -16,5 +16,6 @@
+
\ No newline at end of file
diff --git a/notebooks/visualization/intellij.visualisation.iml b/notebooks/visualization/intellij.visualisation.iml
new file mode 100644
index 000000000000..52ae855fc058
--- /dev/null
+++ b/notebooks/visualization/intellij.visualisation.iml
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/notebooks/visualization/resources-jps/META-INF/plugin.xml b/notebooks/visualization/resources-jps/META-INF/plugin.xml
deleted file mode 100644
index ca41472d1331..000000000000
--- a/notebooks/visualization/resources-jps/META-INF/plugin.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
- Inlay Visualisation
- org.intellij.datavis.r.inlays.visualisation
- JetBrains
-
-
\ No newline at end of file
diff --git a/notebooks/visualization/resources/META-INF/visualisation.xml b/notebooks/visualization/resources/intellij.visualisation.xml
similarity index 97%
rename from notebooks/visualization/resources/META-INF/visualisation.xml
rename to notebooks/visualization/resources/intellij.visualisation.xml
index a8d4a1e0dfc7..129b5152b1b3 100644
--- a/notebooks/visualization/resources/META-INF/visualisation.xml
+++ b/notebooks/visualization/resources/intellij.visualisation.xml
@@ -1,4 +1,5 @@
-
+
+
com.intellij.platform.images
-
+
-
- messages.VisualizationBundle
diff --git a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy
index 73a888b6e985..ef91377d52ee 100644
--- a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy
+++ b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/PlatformModules.groovy
@@ -105,7 +105,7 @@ final class PlatformModules {
"intellij.platform.credentialStore",
"intellij.platform.credentialStore.ui",
"intellij.platform.rd.community",
- "intellij.platform.ml.impl"
+ "intellij.platform.ml.impl",
)
private static final String UTIL_JAR = "util.jar"
diff --git a/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml b/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml
index 96eb6392bb6a..ed9af5660956 100644
--- a/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml
+++ b/platform/platform-resources/src/META-INF/PlatformLangPlugin.xml
@@ -149,4 +149,8 @@
+
+
+
+
diff --git a/python/build/groovy/org/jetbrains/intellij/build/pycharm/PyCharmCommunityProperties.groovy b/python/build/groovy/org/jetbrains/intellij/build/pycharm/PyCharmCommunityProperties.groovy
index 6debc75b2d10..1dda0bc205ed 100644
--- a/python/build/groovy/org/jetbrains/intellij/build/pycharm/PyCharmCommunityProperties.groovy
+++ b/python/build/groovy/org/jetbrains/intellij/build/pycharm/PyCharmCommunityProperties.groovy
@@ -20,7 +20,7 @@ class PyCharmCommunityProperties extends PyCharmPropertiesBase {
productLayout.mainModules = ["intellij.pycharm.community.main"]
productLayout.productApiModules = ["intellij.xml.dom"]
- productLayout.productImplementationModules = [
+ productLayout.productImplementationModules = NotebookProperties.NOTEBOOK_IMPLEMENTATION_MODULES + [
"intellij.xml.dom.impl",
"intellij.platform.main",
"intellij.pycharm.community"
diff --git a/python/intellij.pycharm.community.iml b/python/intellij.pycharm.community.iml
index 2f461a824eff..42f90b90d685 100644
--- a/python/intellij.pycharm.community.iml
+++ b/python/intellij.pycharm.community.iml
@@ -17,5 +17,6 @@
+
\ No newline at end of file