From 0287ed4135a6e7842381db889b8378aa4e5f51bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E4=B8=87=E7=A8=8B?= <1498425439@qq.com> Date: Sun, 5 Jan 2025 10:38:48 +0800 Subject: [PATCH] fix: add load kotlin for 2024.2 Fixed #67 --- .../github/linwancen/plugin/show/java/KotlinLangDoc.java | 5 ----- .../linwancen/plugin/show/lang/base/BaseLangDoc.java | 9 +++++++++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/main/idea/io/github/linwancen/plugin/show/java/KotlinLangDoc.java b/src/main/idea/io/github/linwancen/plugin/show/java/KotlinLangDoc.java index 7b68908..7419821 100644 --- a/src/main/idea/io/github/linwancen/plugin/show/java/KotlinLangDoc.java +++ b/src/main/idea/io/github/linwancen/plugin/show/java/KotlinLangDoc.java @@ -9,7 +9,6 @@ import io.github.linwancen.plugin.show.lang.base.BaseTagLangDoc; import io.github.linwancen.plugin.show.lang.base.DocFilter; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import org.jetbrains.kotlin.idea.KotlinLanguage; import org.jetbrains.kotlin.kdoc.psi.api.KDoc; import org.jetbrains.kotlin.kdoc.psi.impl.KDocName; import org.jetbrains.kotlin.kdoc.psi.impl.KDocSection; @@ -20,10 +19,6 @@ import java.util.List; public class KotlinLangDoc extends BaseTagLangDoc { - static { - LANG_DOC_MAP.put(KotlinLanguage.INSTANCE.getID(), new KotlinLangDoc()); - } - @Override public @NotNull List> getRefClass() { return List.of(KtNameReferenceExpression.class, KDocName.class); diff --git a/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java b/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java index d97d90a..2942f3b 100644 --- a/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java +++ b/src/main/java/io/github/linwancen/plugin/show/lang/base/BaseLangDoc.java @@ -28,6 +28,15 @@ import java.util.Map; public abstract class BaseLangDoc extends EditorLinePainter { public static final Map LANG_DOC_MAP = new LinkedHashMap<>(); + static { + try { + // for 2024.2 + Class clazz = Class.forName("io.github.linwancen.plugin.show.java.KotlinLangDoc"); + BaseLangDoc lang = (BaseLangDoc) clazz.getConstructor().newInstance(); + LANG_DOC_MAP.put("kotlin", lang); + } catch (Exception ignored) {} + } + public abstract @NotNull List> getRefClass(); public abstract boolean show(@NotNull LineInfo info);