diff --git a/src/main/java/de/marhali/easyi18n/editor/I18nCompletionContributor.java b/src/main/java/de/marhali/easyi18n/editor/I18nCompletionContributor.java deleted file mode 100644 index b47fa62..0000000 --- a/src/main/java/de/marhali/easyi18n/editor/I18nCompletionContributor.java +++ /dev/null @@ -1,18 +0,0 @@ -package de.marhali.easyi18n.editor; - -import com.intellij.codeInsight.completion.CompletionContributor; -import com.intellij.codeInsight.completion.CompletionType; -import com.intellij.patterns.*; -import com.intellij.psi.PsiLiteralValue; - -/** - * Show i18n key completion for literal values. - * @author marhali - */ -public class I18nCompletionContributor extends CompletionContributor { - - public I18nCompletionContributor() { - extend(CompletionType.BASIC, PlatformPatterns.psiElement().inside(PsiLiteralValue.class), - new I18nCompletionProvider()); - } -} \ No newline at end of file diff --git a/src/main/java/de/marhali/easyi18n/editor/I18nCompletionProvider.java b/src/main/java/de/marhali/easyi18n/editor/KeyCompletionProvider.java similarity index 92% rename from src/main/java/de/marhali/easyi18n/editor/I18nCompletionProvider.java rename to src/main/java/de/marhali/easyi18n/editor/KeyCompletionProvider.java index 0afcf5c..6cb8766 100644 --- a/src/main/java/de/marhali/easyi18n/editor/I18nCompletionProvider.java +++ b/src/main/java/de/marhali/easyi18n/editor/KeyCompletionProvider.java @@ -20,10 +20,12 @@ import java.util.List; * I18n translation key completion provider. * @author marhali */ -public class I18nCompletionProvider extends CompletionProvider { +public class KeyCompletionProvider extends CompletionProvider { @Override - protected void addCompletions(@NotNull CompletionParameters parameters, @NotNull ProcessingContext context, @NotNull CompletionResultSet result) { + protected void addCompletions(@NotNull CompletionParameters parameters, + @NotNull ProcessingContext context, @NotNull CompletionResultSet result) { + Project project = parameters.getOriginalFile().getProject(); String previewLocale = SettingsService.getInstance(project).getState().getPreviewLocale(); diff --git a/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyAnnotator.java b/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyAnnotator.java index 2d2f441..8de8149 100644 --- a/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyAnnotator.java +++ b/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyAnnotator.java @@ -10,7 +10,7 @@ import de.marhali.easyi18n.editor.KeyAnnotator; import org.jetbrains.annotations.NotNull; /** - * Translation key annotator. + * Translation key annotator for generic languages which support {@link PsiLiteralValue}. * @author marhali */ public class GenericKeyAnnotator extends KeyAnnotator implements Annotator { diff --git a/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyCompletionContributor.java b/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyCompletionContributor.java new file mode 100644 index 0000000..e84b7ec --- /dev/null +++ b/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyCompletionContributor.java @@ -0,0 +1,19 @@ +package de.marhali.easyi18n.editor.generic; + +import com.intellij.codeInsight.completion.CompletionContributor; +import com.intellij.codeInsight.completion.CompletionType; +import com.intellij.patterns.*; +import com.intellij.psi.PsiLiteralValue; +import de.marhali.easyi18n.editor.KeyCompletionProvider; + +/** + * Translation key completion for generic languages which support {@link PsiLiteralValue}. + * @author marhali + */ +public class GenericKeyCompletionContributor extends CompletionContributor { + + public GenericKeyCompletionContributor() { + extend(CompletionType.BASIC, PlatformPatterns.psiElement().inside(PsiLiteralValue.class), + new KeyCompletionProvider()); + } +} \ No newline at end of file diff --git a/src/main/java/de/marhali/easyi18n/editor/kotlin/KotlinKeyCompletionContributor.java b/src/main/java/de/marhali/easyi18n/editor/kotlin/KotlinKeyCompletionContributor.java new file mode 100644 index 0000000..30a6a57 --- /dev/null +++ b/src/main/java/de/marhali/easyi18n/editor/kotlin/KotlinKeyCompletionContributor.java @@ -0,0 +1,20 @@ +package de.marhali.easyi18n.editor.kotlin; + +import com.intellij.codeInsight.completion.CompletionContributor; +import com.intellij.codeInsight.completion.CompletionType; +import com.intellij.patterns.PlatformPatterns; + +import de.marhali.easyi18n.editor.KeyCompletionProvider; +import org.jetbrains.kotlin.psi.KtLiteralStringTemplateEntry; + +/** + * Kotlin specific translation key completion contributor. + * @author marhali + */ +public class KotlinKeyCompletionContributor extends CompletionContributor { + + public KotlinKeyCompletionContributor() { + extend(CompletionType.BASIC, PlatformPatterns.psiElement().inside(KtLiteralStringTemplateEntry.class), + new KeyCompletionProvider()); + } +} diff --git a/src/main/resources/META-INF/de.marhali.easyi18n-kotlin.xml b/src/main/resources/META-INF/de.marhali.easyi18n-kotlin.xml index 83163b9..441c647 100644 --- a/src/main/resources/META-INF/de.marhali.easyi18n-kotlin.xml +++ b/src/main/resources/META-INF/de.marhali.easyi18n-kotlin.xml @@ -1,5 +1,8 @@ + + \ No newline at end of file diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml index 8222d13..a452e0e 100644 --- a/src/main/resources/META-INF/plugin.xml +++ b/src/main/resources/META-INF/plugin.xml @@ -14,7 +14,7 @@ + implementationClass="de.marhali.easyi18n.editor.generic.GenericKeyCompletionContributor" />