From aec00c642d49c8f57d0e12a6577f457ad4395e60 Mon Sep 17 00:00:00 2001 From: Martin Lippert Date: Wed, 7 Jun 2017 12:32:05 +0200 Subject: [PATCH] added language id fallback for manifest files to workaround a limitation in LSP4E at the moment --- .../vscode/manifest/yaml/ManifestYamlLanguageServer.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/headless-services/manifest-yaml-language-server/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYamlLanguageServer.java b/headless-services/manifest-yaml-language-server/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYamlLanguageServer.java index bd2bfbabe..6bfd09ca9 100644 --- a/headless-services/manifest-yaml-language-server/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYamlLanguageServer.java +++ b/headless-services/manifest-yaml-language-server/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYamlLanguageServer.java @@ -53,6 +53,8 @@ public class ManifestYamlLanguageServer extends SimpleLanguageServer { private final ClientParamsProvider cfParamsProvider; private final LazyCompletionResolver completionResolver = new LazyCompletionResolver(); //Set to null to disable lazy resolving + private final LanguageId FALLBACK_YML_ID = LanguageId.of("yml"); + public ManifestYamlLanguageServer() { this(DefaultCloudFoundryClientFactoryV2.INSTANCE, new CfCliParamsProvider()); } @@ -80,7 +82,11 @@ public class ManifestYamlLanguageServer extends SimpleLanguageServer { // SimpleWorkspaceService workspace = getWorkspaceService(); documents.onDidChangeContent(params -> { TextDocument doc = params.getDocument(); - if (LanguageId.CF_MANIFEST.equals(doc.getLanguageId())) { + if (LanguageId.CF_MANIFEST.equals(doc.getLanguageId()) + || FALLBACK_YML_ID.equals(doc.getLanguageId())) { + // + // this FALLBACK_YML_ID got introduced to workaround a limitation in LSP4E, which sets the file extension as language ID to the document + // validateWith(doc.getId(), engine); } else { validateWith(doc.getId(), IReconcileEngine.NULL);