diff --git a/core/src/main/kotlin/com/phodal/shirecore/provider/variable/model/PsiContextVariable.kt b/core/src/main/kotlin/com/phodal/shirecore/provider/variable/model/PsiContextVariable.kt index b2b5b3c18..b699209b5 100644 --- a/core/src/main/kotlin/com/phodal/shirecore/provider/variable/model/PsiContextVariable.kt +++ b/core/src/main/kotlin/com/phodal/shirecore/provider/variable/model/PsiContextVariable.kt @@ -63,6 +63,8 @@ enum class PsiContextVariable(val variableName: String, val description: String? METHOD_CALLER("methodCaller", "The method that initiates the current call"), CALLED_METHOD("calledMethod", "The method that is being called by the current method"), + + SIMILAR_CODE("similarCode", "Recently 20 files similar code based on the tf-idf search") ; companion object { diff --git a/languages/java/src/main/kotlin/com/phodal/shirelang/java/variable/JavaPsiContextVariableProvider.kt b/languages/java/src/main/kotlin/com/phodal/shirelang/java/variable/JavaPsiContextVariableProvider.kt index 9f2ee32de..66b6b003b 100644 --- a/languages/java/src/main/kotlin/com/phodal/shirelang/java/variable/JavaPsiContextVariableProvider.kt +++ b/languages/java/src/main/kotlin/com/phodal/shirelang/java/variable/JavaPsiContextVariableProvider.kt @@ -9,6 +9,7 @@ import com.phodal.shirecore.provider.context.ToolchainPrepareContext import com.phodal.shirecore.provider.variable.impl.CodeSmellBuilder import com.phodal.shirecore.provider.variable.model.PsiContextVariable import com.phodal.shirecore.provider.variable.PsiContextVariableProvider +import com.phodal.shirecore.search.SimilarChunksSearch import com.phodal.shirelang.java.util.JavaTestHelper import com.phodal.shirelang.java.util.getContainingClass import com.phodal.shirelang.java.variable.provider.JavaRelatedClassesProvider @@ -67,6 +68,8 @@ class JavaPsiContextVariableProvider : PsiContextVariableProvider { if (psiElement !is PsiMethod) return "" return JavaTestHelper.findCallees(psiElement).joinToString("\n") { it.text } } + + PsiContextVariable.SIMILAR_CODE -> return SimilarChunksSearch.createQuery(psiElement) ?: "" } } } diff --git a/shirelang/src/main/kotlin/com/phodal/shirelang/actions/vcs/ShireVcsActionGroup.kt b/shirelang/src/main/kotlin/com/phodal/shirelang/actions/vcs/ShireVcsActionGroup.kt index 2b5fc3ced..acd1d47db 100644 --- a/shirelang/src/main/kotlin/com/phodal/shirelang/actions/vcs/ShireVcsActionGroup.kt +++ b/shirelang/src/main/kotlin/com/phodal/shirelang/actions/vcs/ShireVcsActionGroup.kt @@ -1,5 +1,6 @@ package com.phodal.shirelang.actions.vcs +import com.intellij.ide.DataManager import com.intellij.openapi.actionSystem.ActionUpdateThread import com.intellij.openapi.actionSystem.AnAction import com.intellij.openapi.actionSystem.AnActionEvent