diff --git a/src/main/java/de/marhali/easyi18n/editor/I18nKeyAnnotator.java b/src/main/java/de/marhali/easyi18n/editor/I18nKeyAnnotator.java
deleted file mode 100644
index a79504e..0000000
--- a/src/main/java/de/marhali/easyi18n/editor/I18nKeyAnnotator.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package de.marhali.easyi18n.editor;
-
-import com.intellij.lang.annotation.AnnotationHolder;
-import com.intellij.lang.annotation.Annotator;
-import com.intellij.lang.annotation.HighlightSeverity;
-import com.intellij.openapi.project.Project;
-import com.intellij.psi.PsiElement;
-import com.intellij.psi.PsiLiteralValue;
-
-import de.marhali.easyi18n.model.LocalizedNode;
-import de.marhali.easyi18n.service.DataStore;
-import de.marhali.easyi18n.service.SettingsService;
-
-import org.jetbrains.annotations.NotNull;
-
-/**
- * Translation key annotator.
- * @author marhali
- */
-public class I18nKeyAnnotator implements Annotator {
-
- @Override
- public void annotate(@NotNull PsiElement element, @NotNull AnnotationHolder holder) {
- if(!(element instanceof PsiLiteralValue)) {
- return;
- }
-
- PsiLiteralValue literalValue = (PsiLiteralValue) element;
- String value = literalValue.getValue() instanceof String ? (String) literalValue.getValue() : null;
-
- if(value == null) {
- return;
- }
-
- Project project = element.getProject();
- String previewLocale = SettingsService.getInstance(project).getState().getPreviewLocale();
-
- LocalizedNode node = DataStore.getInstance(project).getTranslations().getNode(value);
-
- if(node == null) { // Unknown translation. Just ignore it
- return;
- }
-
- String tooltip = node.isLeaf() ? "I18n(" + previewLocale + ": " + node.getValue().get(previewLocale) + ")"
- : "I18n ([])";
-
- holder.newAnnotation(HighlightSeverity.INFORMATION, tooltip).create();
- }
-}
\ No newline at end of file
diff --git a/src/main/java/de/marhali/easyi18n/editor/kotlin/KeyAnnotator.java b/src/main/java/de/marhali/easyi18n/editor/KeyAnnotator.java
similarity index 96%
rename from src/main/java/de/marhali/easyi18n/editor/kotlin/KeyAnnotator.java
rename to src/main/java/de/marhali/easyi18n/editor/KeyAnnotator.java
index a80bf06..b6b33bd 100644
--- a/src/main/java/de/marhali/easyi18n/editor/kotlin/KeyAnnotator.java
+++ b/src/main/java/de/marhali/easyi18n/editor/KeyAnnotator.java
@@ -1,4 +1,4 @@
-package de.marhali.easyi18n.editor.kotlin;
+package de.marhali.easyi18n.editor;
import com.intellij.lang.annotation.AnnotationHolder;
import com.intellij.lang.annotation.HighlightSeverity;
diff --git a/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyAnnotator.java b/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyAnnotator.java
new file mode 100644
index 0000000..2d2f441
--- /dev/null
+++ b/src/main/java/de/marhali/easyi18n/editor/generic/GenericKeyAnnotator.java
@@ -0,0 +1,33 @@
+package de.marhali.easyi18n.editor.generic;
+
+import com.intellij.lang.annotation.AnnotationHolder;
+import com.intellij.lang.annotation.Annotator;
+import com.intellij.psi.PsiElement;
+import com.intellij.psi.PsiLiteralValue;
+
+import de.marhali.easyi18n.editor.KeyAnnotator;
+
+import org.jetbrains.annotations.NotNull;
+
+/**
+ * Translation key annotator.
+ * @author marhali
+ */
+public class GenericKeyAnnotator extends KeyAnnotator implements Annotator {
+
+ @Override
+ public void annotate(@NotNull PsiElement element, @NotNull AnnotationHolder holder) {
+ if(!(element instanceof PsiLiteralValue)) {
+ return;
+ }
+
+ PsiLiteralValue literalValue = (PsiLiteralValue) element;
+ String value = literalValue.getValue() instanceof String ? (String) literalValue.getValue() : null;
+
+ if(value == null) {
+ return;
+ }
+
+ annotate(value, element.getProject(), holder);
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/de/marhali/easyi18n/editor/kotlin/KotlinKeyAnnotator.java b/src/main/java/de/marhali/easyi18n/editor/kotlin/KotlinKeyAnnotator.java
index 6dc68b9..4e9cfe3 100644
--- a/src/main/java/de/marhali/easyi18n/editor/kotlin/KotlinKeyAnnotator.java
+++ b/src/main/java/de/marhali/easyi18n/editor/kotlin/KotlinKeyAnnotator.java
@@ -4,6 +4,7 @@ import com.intellij.lang.annotation.AnnotationHolder;
import com.intellij.lang.annotation.Annotator;
import com.intellij.psi.PsiElement;
+import de.marhali.easyi18n.editor.KeyAnnotator;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.kotlin.psi.KtLiteralStringTemplateEntry;
diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml
index d1d2292..8222d13 100644
--- a/src/main/resources/META-INF/plugin.xml
+++ b/src/main/resources/META-INF/plugin.xml
@@ -16,6 +16,6 @@
-
+
\ No newline at end of file