From 6d330820307c6893721749d00cff66e8849a3647 Mon Sep 17 00:00:00 2001 From: liuxy0551 Date: Wed, 29 May 2024 16:28:38 +0800 Subject: [PATCH] feat: #128 get language configuration --- src/setupLanguageFeatures.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/setupLanguageFeatures.ts b/src/setupLanguageFeatures.ts index 2283ae5c..091ee4c9 100644 --- a/src/setupLanguageFeatures.ts +++ b/src/setupLanguageFeatures.ts @@ -31,6 +31,7 @@ const featureLoadedMap = new Map(); const languageModesMap = new Map(); const registerListenerMap = new Map(); const languageDefaultsMap = new Map(); +const languageConfigurationMap = new Map(); function setupMode(defaults: LanguageServiceDefaults) { const languageId = defaults.languageId; @@ -43,6 +44,12 @@ function setupMode(defaults: LanguageServiceDefaults) { }); } +export function getLanguageConfiguration( + languageId: LanguageIdEnum +): ModeConfiguration | undefined { + return languageConfigurationMap.get(languageId); +} + export function setupLanguageFeatures( languageId: LanguageIdEnum, configuration: FeatureConfiguration @@ -54,6 +61,9 @@ export function setupLanguageFeatures( const { preprocessCode, ...rest } = configuration; const modeConf = processConfiguration(languageId, rest); + // Save languageId's configuration for getLanguageConfiguration + languageConfigurationMap.set(languageId, modeConf); + // Set up before language load const defaults: LanguageServiceDefaults = new LanguageServiceDefaultsImpl( languageId,