diff --git a/src/main/kotlin/b/language/server/communication/Communicator.kt b/src/main/kotlin/b/language/server/communication/Communicator.kt index 10fb9a7efc467d150a57447822c09f981eeed277..4e8e8c3eab8cdf618a65a7b72961547ed60876c8 100644 --- a/src/main/kotlin/b/language/server/communication/Communicator.kt +++ b/src/main/kotlin/b/language/server/communication/Communicator.kt @@ -33,7 +33,7 @@ object Communicator : CommunicatorInterface { */ override fun sendDebugMessage(message: String, severity: MessageType) { if(debugMode) { - System.err.println("Debug messages $message") + println("Debug messages: $message") client.logMessage(MessageParams(severity, message)) } diff --git a/src/main/kotlin/b/language/server/proBMangement/prob/ProBKernelManager.kt b/src/main/kotlin/b/language/server/proBMangement/prob/ProBKernelManager.kt index 4370b32694c801cc064bb1f1e13147bc42b18bc3..6bd2fe10f69d760ba1b397123980a5b1c27bd502 100644 --- a/src/main/kotlin/b/language/server/proBMangement/prob/ProBKernelManager.kt +++ b/src/main/kotlin/b/language/server/proBMangement/prob/ProBKernelManager.kt @@ -49,13 +49,15 @@ class ProBKernelManager(private val communicator : CommunicatorInterface) : ProB return if(probNewHome != probHome) { if(probNewHome == "DEFAULT"){ //Use default prob - System.setProperty("prob.home", "null") + System.setProperty("prob.home", "DEFAULT") kernel = setup() probHome = probNewHome true } else { - if (File(probNewHome).exists()) { // Use custom prob + + val dict = File(probNewHome) + if (dict.exists() && dict.isDirectory) { // Use custom prob System.setProperty("prob.home", probNewHome) kernel = setup() probHome = probNewHome @@ -82,14 +84,16 @@ class ProBKernelManager(private val communicator : CommunicatorInterface) : ProB val path = URI(uri).path Files.exists(Path.of(URI(uri))) - communicator.sendDebugMessage("try to use ${settings.probHome} as prob version instead of ${System.getProperty("prob.home")}", MessageType.Info) - // val result = checkProBVersionSetting(settings.probHome) - // if(!result){ - // throw CouldNotFindProBHomeException("searched at ${settings.probHome} for prob but found nothing") - //} + communicator.sendDebugMessage("try to use ${settings.probHome} as prob version instead of " + + System.getProperty("prob.home"), MessageType.Info) + val result = checkProBVersionSetting(settings.probHome) + if(!result){ + throw CouldNotFindProBHomeException("searched at ${settings.probHome} for prob but found nothing") + } communicator.sendDebugMessage("success!", MessageType.Info) communicator.sendDebugMessage("checking document", MessageType.Info) - return kernel.check(path, ProBSettings(wdChecks = settings.wdChecks, strictChecks = settings.strictChecks, performanceHints = settings.performanceHints)) + return kernel.check(path, ProBSettings(wdChecks = settings.wdChecks, strictChecks = settings.strictChecks, + performanceHints = settings.performanceHints)) } } \ No newline at end of file