in src/mapper.ts [47:71]
private mapAllSettings(settings: IMapperSettings, sublimeSettings: { [key: string]: any }): CategorizedSettings {
const analyzedSettings: CategorizedSettings = new CategorizedSettings();
const config = this.mockConfig || vscode.workspace.getConfiguration();
for (const sublimeKey of Object.keys(sublimeSettings)) {
const sublimeSetting = { name: sublimeKey, value: sublimeSettings[sublimeKey] };
const vscodeSetting = this.mapSetting(sublimeSetting, settings.mappings[sublimeKey]);
if (vscodeSetting) {
const configTest = this.checkWithExistingSettings(vscodeSetting, config);
const mappedSetting = new MappedSetting(sublimeSetting, vscodeSetting);
if (configTest.alreadyExists) {
analyzedSettings.alreadyExisting.push(mappedSetting); // setting with same key-value pair already exists
} else {
if (configTest.existingValue) {
mappedSetting.vscode.markAsOverride(configTest.existingValue); // setting with same key but different value exists
}
analyzedSettings.mappedSettings.push(mappedSetting);
}
} else {
analyzedSettings.noMappings.push(sublimeSetting);
}
}
return this.appendDefaultSublimeSettings(analyzedSettings, settings.defaults, config);
}