private appendDefaultSublimeSettings()

in src/mapper.ts [86:119]


    private appendDefaultSublimeSettings(settings: CategorizedSettings, defaultSettings: VscodeSetting[], config: vscode.WorkspaceConfiguration): CategorizedSettings {
        const mappedAndExisting: MappedSetting[] = [...settings.mappedSettings, ...settings.alreadyExisting];
        // filter out default settings that will be imported as mapped settings or already exist in the user settings
        const uniqueDefaultSettings = mappedAndExisting.length
            ? defaultSettings.filter(defaultSetting => !mappedAndExisting.find(mappedSetting => mappedSetting.vscode.name === defaultSetting.name))
            : defaultSettings;

        // don't show settings that already exist in user config
        uniqueDefaultSettings.forEach(defaultSetting => {
            const configTest = this.checkWithExistingSettings(defaultSetting, config);

            if (configTest.alreadyExists) {
                settings.alreadyExisting.push(new MappedSetting({ name: 'Default Setting', value: '' }, defaultSetting));
            } else {
                if (configTest.existingValue) {
                    defaultSetting.markAsOverride(configTest.existingValue);
                }
                settings.defaultSettings.push(defaultSetting);
            }
        });

        settings.defaultSettings.sort((a, b) => {
            if (a.overwritesValue && b.overwritesValue) {
                return a.name.localeCompare(b.name);
            } else if (a.overwritesValue) {
                return 1;
            } else if (b.overwritesValue) {
                return -1;
            }
            return a.name.localeCompare(b.name);
        });

        return settings;
    }