提交 1a1cbf47 编写于 作者: S Sandeep Somavarapu

#26707 Use resource language scope instead of override property

上级 299449f0
......@@ -432,8 +432,7 @@ export const editorConfigurationBaseNode = Object.freeze<IConfigurationNode>({
order: 5,
type: 'object',
title: nls.localize('editorConfigurationTitle', "Editor"),
overridable: true,
scope: ConfigurationScope.RESOURCE,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
});
const configurationRegistry = Registry.as<IConfigurationRegistry>(Extensions.Configuration);
......
......@@ -147,9 +147,9 @@ export const machineSettings: { properties: SettingProperties, patternProperties
export const machineOverridableSettings: { properties: SettingProperties, patternProperties: SettingProperties } = { properties: {}, patternProperties: {} };
export const windowSettings: { properties: SettingProperties, patternProperties: SettingProperties } = { properties: {}, patternProperties: {} };
export const resourceSettings: { properties: SettingProperties, patternProperties: SettingProperties } = { properties: {}, patternProperties: {} };
export const resourceLanguageSettings: { properties: SettingProperties, patternProperties: SettingProperties } = { properties: {}, patternProperties: {} };
export const editorConfigurationSchemaId = 'vscode://schemas/settings/editor';
export const resourceLanguageSettingsSchemaId = 'vscode://schemas/settings/resourceLanguage';
const contributionRegistry = Registry.as<IJSONContributionRegistry>(JSONExtensions.JSONContribution);
class ConfigurationRegistry implements IConfigurationRegistry {
......@@ -158,7 +158,7 @@ class ConfigurationRegistry implements IConfigurationRegistry {
private readonly configurationContributors: IConfigurationNode[];
private readonly configurationProperties: { [qualifiedKey: string]: IJSONSchema };
private readonly excludedConfigurationProperties: { [qualifiedKey: string]: IJSONSchema };
private readonly editorConfigurationSchema: IJSONSchema;
private readonly resourceLanguageSettingsSchema: IJSONSchema;
private readonly overrideIdentifiers: string[] = [];
private overridePropertyPattern: string;
......@@ -175,12 +175,12 @@ class ConfigurationRegistry implements IConfigurationRegistry {
properties: {}
};
this.configurationContributors = [this.defaultOverridesConfigurationNode];
this.editorConfigurationSchema = { properties: {}, patternProperties: {}, additionalProperties: false, errorMessage: 'Unknown editor configuration setting', allowTrailingCommas: true, allowComments: true };
this.resourceLanguageSettingsSchema = { properties: {}, patternProperties: {}, additionalProperties: false, errorMessage: 'Unknown editor configuration setting', allowTrailingCommas: true, allowComments: true };
this.configurationProperties = {};
this.excludedConfigurationProperties = {};
this.overridePropertyPattern = this.computeOverridePropertyPattern();
contributionRegistry.registerSchema(editorConfigurationSchemaId, this.editorConfigurationSchema);
contributionRegistry.registerSchema(resourceLanguageSettingsSchemaId, this.resourceLanguageSettingsSchema);
}
public registerConfiguration(configuration: IConfigurationNode, validate: boolean = true): void {
......@@ -193,9 +193,9 @@ class ConfigurationRegistry implements IConfigurationRegistry {
properties.push(...this.validateAndRegisterProperties(configuration, validate)); // fills in defaults
this.configurationContributors.push(configuration);
this.registerJSONConfiguration(configuration);
this.updateSchemaForOverrideSettingsConfiguration(configuration);
});
contributionRegistry.registerSchema(resourceLanguageSettingsSchemaId, this.resourceLanguageSettingsSchema);
this._onDidSchemaChange.fire();
this._onDidUpdateConfiguration.fire(properties);
}
......@@ -208,7 +208,6 @@ class ConfigurationRegistry implements IConfigurationRegistry {
properties.push(key);
delete this.configurationProperties[key];
delete this.editorConfigurationSchema.properties![key];
// Delete from schema
delete allSettings.properties[key];
......@@ -226,11 +225,8 @@ class ConfigurationRegistry implements IConfigurationRegistry {
delete windowSettings.properties[key];
break;
case ConfigurationScope.RESOURCE:
delete resourceSettings.properties[key];
break;
case ConfigurationScope.RESOURCE_LANGUAGE:
delete resourceSettings.properties[key];
delete resourceLanguageSettings.properties[key];
break;
}
}
......@@ -247,7 +243,7 @@ class ConfigurationRegistry implements IConfigurationRegistry {
}
}
contributionRegistry.registerSchema(editorConfigurationSchemaId, this.editorConfigurationSchema);
contributionRegistry.registerSchema(resourceLanguageSettingsSchemaId, this.resourceLanguageSettingsSchema);
this._onDidSchemaChange.fire();
this._onDidUpdateConfiguration.fire(properties);
}
......@@ -263,7 +259,7 @@ class ConfigurationRegistry implements IConfigurationRegistry {
type: 'object',
default: defaultValue,
description: nls.localize('overrideSettings.description', "Configure editor settings to be overridden for {0} language.", key),
$ref: editorConfigurationSchemaId
$ref: resourceLanguageSettingsSchemaId
};
allSettings.properties[key] = propertySchema;
this.defaultOverridesConfigurationNode.properties![key] = propertySchema;
......@@ -365,7 +361,7 @@ class ConfigurationRegistry implements IConfigurationRegistry {
}
private registerJSONConfiguration(configuration: IConfigurationNode) {
function register(configuration: IConfigurationNode) {
const register = (configuration: IConfigurationNode) => {
let properties = configuration.properties;
if (properties) {
for (const key in properties) {
......@@ -388,7 +384,7 @@ class ConfigurationRegistry implements IConfigurationRegistry {
break;
case ConfigurationScope.RESOURCE_LANGUAGE:
resourceSettings.properties[key] = properties[key];
resourceLanguageSettings.properties[key] = properties[key];
this.resourceLanguageSettingsSchema.properties![key] = properties[key];
break;
}
}
......@@ -397,17 +393,10 @@ class ConfigurationRegistry implements IConfigurationRegistry {
if (subNodes) {
subNodes.forEach(register);
}
}
};
register(configuration);
}
private updateSchemaForOverrideSettingsConfiguration(configuration: IConfigurationNode): void {
if (configuration.id !== SETTINGS_OVERRRIDE_NODE_ID) {
this.update(configuration);
contributionRegistry.registerSchema(editorConfigurationSchemaId, this.editorConfigurationSchema);
}
}
private updateOverridePropertyPatternKey(): void {
let patternProperties: IJSONSchema = allSettings.patternProperties[this.overridePropertyPattern];
if (!patternProperties) {
......@@ -415,7 +404,7 @@ class ConfigurationRegistry implements IConfigurationRegistry {
type: 'object',
description: nls.localize('overrideSettings.defaultDescription', "Configure editor settings to be overridden for a language."),
errorMessage: 'Unknown Identifier. Use language identifiers',
$ref: editorConfigurationSchemaId
$ref: resourceLanguageSettingsSchemaId
};
}
......@@ -438,27 +427,11 @@ class ConfigurationRegistry implements IConfigurationRegistry {
this._onDidSchemaChange.fire();
}
private update(configuration: IConfigurationNode): void {
let properties = configuration.properties;
if (properties) {
for (let key in properties) {
if (properties[key].overridable) {
this.editorConfigurationSchema.properties![key] = this.getConfigurationProperties()[key];
}
}
}
let subNodes = configuration.allOf;
if (subNodes) {
subNodes.forEach(subNode => this.update(subNode));
}
}
private computeOverridePropertyPattern(): string {
return this.overrideIdentifiers.length ? OVERRIDE_PATTERN_WITH_SUBSTITUTION.replace('${0}', this.overrideIdentifiers.map(identifier => strings.createRegExp(identifier, false).source).join('|')) : OVERRIDE_PROPERTY;
}
}
const SETTINGS_OVERRRIDE_NODE_ID = 'override';
const OVERRIDE_PROPERTY = '\\[.*\\]$';
const OVERRIDE_PATTERN_WITH_SUBSTITUTION = '\\[(${0})\\]$';
export const OVERRIDE_PROPERTY_PATTERN = new RegExp(OVERRIDE_PROPERTY);
......
......@@ -8,7 +8,7 @@ import * as objects from 'vs/base/common/objects';
import { Registry } from 'vs/platform/registry/common/platform';
import { IJSONSchema } from 'vs/base/common/jsonSchema';
import { ExtensionsRegistry, IExtensionPointUser } from 'vs/workbench/services/extensions/common/extensionsRegistry';
import { IConfigurationNode, IConfigurationRegistry, Extensions, editorConfigurationSchemaId, IDefaultConfigurationExtension, validateProperty, ConfigurationScope } from 'vs/platform/configuration/common/configurationRegistry';
import { IConfigurationNode, IConfigurationRegistry, Extensions, resourceLanguageSettingsSchemaId, IDefaultConfigurationExtension, validateProperty, ConfigurationScope } from 'vs/platform/configuration/common/configurationRegistry';
import { IJSONContributionRegistry, Extensions as JSONExtensions } from 'vs/platform/jsonschemas/common/jsonContributionRegistry';
import { workspaceSettingsSchemaId, launchSchemaId, tasksSchemaId } from 'vs/workbench/services/configuration/common/configuration';
import { isObject } from 'vs/base/common/types';
......@@ -91,7 +91,7 @@ const defaultConfigurationExtPoint = ExtensionsRegistry.registerExtensionPoint<I
'\\[.*\\]$': {
type: 'object',
default: {},
$ref: editorConfigurationSchemaId,
$ref: resourceLanguageSettingsSchemaId,
}
}
}
......
......@@ -9,7 +9,7 @@ import * as glob from 'vs/base/common/glob';
import { IDisposable } from 'vs/base/common/lifecycle';
import { localize } from 'vs/nls';
import { IConfigurationOverrides, IConfigurationService } from 'vs/platform/configuration/common/configuration';
import { Extensions, IConfigurationRegistry } from 'vs/platform/configuration/common/configurationRegistry';
import { Extensions, IConfigurationRegistry, ConfigurationScope } from 'vs/platform/configuration/common/configurationRegistry';
import { registerSingleton } from 'vs/platform/instantiation/common/extensions';
import { createDecorator } from 'vs/platform/instantiation/common/instantiation';
import { Registry } from 'vs/platform/registry/common/platform';
......@@ -150,7 +150,7 @@ Registry.as<IConfigurationRegistry>(Extensions.Configuration).registerConfigurat
description: localize('symbolSortOrder', "Controls how symbols are sorted in the breadcrumbs outline view."),
type: 'string',
default: 'position',
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
enum: ['position', 'name', 'type'],
enumDescriptions: [
localize('symbolSortOrder.position', "Show symbol outline in file position order."),
......@@ -166,157 +166,157 @@ Registry.as<IConfigurationRegistry>(Extensions.Configuration).registerConfigurat
'breadcrumbs.showFiles': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.file', "When enabled breadcrumbs show `file`-symbols.")
},
'breadcrumbs.showModules': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.module', "When enabled breadcrumbs show `module`-symbols.")
},
'breadcrumbs.showNamespaces': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.namespace', "When enabled breadcrumbs show `namespace`-symbols.")
},
'breadcrumbs.showPackages': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.package', "When enabled breadcrumbs show `package`-symbols.")
},
'breadcrumbs.showClasses': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.class', "When enabled breadcrumbs show `class`-symbols.")
},
'breadcrumbs.showMethods': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.method', "When enabled breadcrumbs show `method`-symbols.")
},
'breadcrumbs.showProperties': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.property', "When enabled breadcrumbs show `property`-symbols.")
},
'breadcrumbs.showFields': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.field', "When enabled breadcrumbs show `field`-symbols.")
},
'breadcrumbs.showConstructors': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.constructor', "When enabled breadcrumbs show `constructor`-symbols.")
},
'breadcrumbs.showEnums': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.enum', "When enabled breadcrumbs show `enum`-symbols.")
},
'breadcrumbs.showInterfaces': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.interface', "When enabled breadcrumbs show `interface`-symbols.")
},
'breadcrumbs.showFunctions': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.function', "When enabled breadcrumbs show `function`-symbols.")
},
'breadcrumbs.showVariables': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.variable', "When enabled breadcrumbs show `variable`-symbols.")
},
'breadcrumbs.showConstants': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.constant', "When enabled breadcrumbs show `constant`-symbols.")
},
'breadcrumbs.showStrings': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.string', "When enabled breadcrumbs show `string`-symbols.")
},
'breadcrumbs.showNumbers': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.number', "When enabled breadcrumbs show `number`-symbols.")
},
'breadcrumbs.showBooleans': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.boolean', "When enabled breadcrumbs show `boolean`-symbols.")
},
'breadcrumbs.showArrays': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.array', "When enabled breadcrumbs show `array`-symbols.")
},
'breadcrumbs.showObjects': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.object', "When enabled breadcrumbs show `object`-symbols.")
},
'breadcrumbs.showKeys': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.key', "When enabled breadcrumbs show `key`-symbols.")
},
'breadcrumbs.showNull': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.null', "When enabled breadcrumbs show `null`-symbols.")
},
'breadcrumbs.showEnumMembers': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.enumMember', "When enabled breadcrumbs show `enumMember`-symbols.")
},
'breadcrumbs.showStructs': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.struct', "When enabled breadcrumbs show `struct`-symbols.")
},
'breadcrumbs.showEvents': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.event', "When enabled breadcrumbs show `event`-symbols.")
},
'breadcrumbs.showOperators': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.operator', "When enabled breadcrumbs show `operator`-symbols.")
},
'breadcrumbs.showTypeParameters': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.typeParameter', "When enabled breadcrumbs show `typeParameter`-symbols.")
}
}
......
......@@ -244,25 +244,22 @@ configurationRegistry.registerConfiguration({
},
'files.encoding': {
'type': 'string',
'overridable': true,
'enum': Object.keys(SUPPORTED_ENCODINGS),
'default': 'utf8',
'description': nls.localize('encoding', "The default character set encoding to use when reading and writing files. This setting can also be configured per language."),
'scope': ConfigurationScope.RESOURCE,
'scope': ConfigurationScope.RESOURCE_LANGUAGE,
'enumDescriptions': Object.keys(SUPPORTED_ENCODINGS).map(key => SUPPORTED_ENCODINGS[key].labelLong),
'included': Object.keys(SUPPORTED_ENCODINGS).length > 1
},
'files.autoGuessEncoding': {
'type': 'boolean',
'overridable': true,
'default': false,
'description': nls.localize('autoGuessEncoding', "When enabled, the editor will attempt to guess the character set encoding when opening files. This setting can also be configured per language."),
'scope': ConfigurationScope.RESOURCE,
'scope': ConfigurationScope.RESOURCE_LANGUAGE,
'included': Object.keys(SUPPORTED_ENCODINGS).length > 1
},
'files.eol': {
'type': 'string',
'overridable': true,
'enum': [
'\n',
'\r\n',
......@@ -275,7 +272,7 @@ configurationRegistry.registerConfiguration({
],
'default': 'auto',
'description': nls.localize('eol', "The default end of line character."),
'scope': ConfigurationScope.RESOURCE
'scope': ConfigurationScope.RESOURCE_LANGUAGE
},
'files.enableTrash': {
'type': 'boolean',
......@@ -286,22 +283,19 @@ configurationRegistry.registerConfiguration({
'type': 'boolean',
'default': false,
'description': nls.localize('trimTrailingWhitespace', "When enabled, will trim trailing whitespace when saving a file."),
'overridable': true,
'scope': ConfigurationScope.RESOURCE
'scope': ConfigurationScope.RESOURCE_LANGUAGE
},
'files.insertFinalNewline': {
'type': 'boolean',
'default': false,
'description': nls.localize('insertFinalNewline', "When enabled, insert a final new line at the end of the file when saving it."),
'overridable': true,
'scope': ConfigurationScope.RESOURCE
'scope': ConfigurationScope.RESOURCE_LANGUAGE
},
'files.trimFinalNewlines': {
'type': 'boolean',
'default': false,
'description': nls.localize('trimFinalNewlines', "When enabled, will trim all new lines after the final new line at the end of the file when saving it."),
'overridable': true,
'scope': ConfigurationScope.RESOURCE
scope: ConfigurationScope.RESOURCE_LANGUAGE,
},
'files.autoSave': {
'type': 'string',
......@@ -358,15 +352,13 @@ configurationRegistry.registerConfiguration({
'type': 'boolean',
'default': false,
'description': nls.localize('formatOnSave', "Format a file on save. A formatter must be available, the file must not be saved after delay, and the editor must not be shutting down."),
'overridable': true,
'scope': ConfigurationScope.RESOURCE
scope: ConfigurationScope.RESOURCE_LANGUAGE,
},
'editor.formatOnSaveTimeout': {
'type': 'number',
'default': 750,
'description': nls.localize('formatOnSaveTimeout', "Timeout in milliseconds after which the formatting that is run on file save is cancelled."),
'overridable': true,
'scope': ConfigurationScope.RESOURCE
scope: ConfigurationScope.RESOURCE_LANGUAGE,
}
}
});
......
......@@ -8,7 +8,7 @@ import { IViewsRegistry, IViewDescriptor, Extensions as ViewExtensions } from 'v
import { OutlinePane } from './outlinePane';
import { VIEW_CONTAINER } from 'vs/workbench/contrib/files/common/files';
import { Registry } from 'vs/platform/registry/common/platform';
import { IConfigurationRegistry, Extensions as ConfigurationExtensions } from 'vs/platform/configuration/common/configurationRegistry';
import { IConfigurationRegistry, Extensions as ConfigurationExtensions, ConfigurationScope } from 'vs/platform/configuration/common/configurationRegistry';
import { OutlineConfigKeys, OutlineViewId } from 'vs/editor/contrib/documentSymbols/outline';
// import './outlineNavigation';
......@@ -55,110 +55,110 @@ Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Configuration).regis
},
'outline.showFiles': {
type: 'boolean',
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
default: true,
markdownDescription: localize('filteredTypes.file', "When enabled outline shows `file`-symbols.")
},
'outline.showModules': {
type: 'boolean',
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
default: true,
markdownDescription: localize('filteredTypes.module', "When enabled outline shows `module`-symbols.")
},
'outline.showNamespaces': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.namespace', "When enabled outline shows `namespace`-symbols.")
},
'outline.showPackages': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.package', "When enabled outline shows `package`-symbols.")
},
'outline.showClasses': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.class', "When enabled outline shows `class`-symbols.")
},
'outline.showMethods': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.method', "When enabled outline shows `method`-symbols.")
},
'outline.showProperties': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.property', "When enabled outline shows `property`-symbols.")
},
'outline.showFields': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.field', "When enabled outline shows `field`-symbols.")
},
'outline.showConstructors': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.constructor', "When enabled outline shows `constructor`-symbols.")
},
'outline.showEnums': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.enum', "When enabled outline shows `enum`-symbols.")
},
'outline.showInterfaces': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.interface', "When enabled outline shows `interface`-symbols.")
},
'outline.showFunctions': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.function', "When enabled outline shows `function`-symbols.")
},
'outline.showVariables': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.variable', "When enabled outline shows `variable`-symbols.")
},
'outline.showConstants': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.constant', "When enabled outline shows `constant`-symbols.")
},
'outline.showStrings': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.string', "When enabled outline shows `string`-symbols.")
},
'outline.showNumbers': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.number', "When enabled outline shows `number`-symbols.")
},
'outline.showBooleans': {
type: 'boolean',
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
default: true,
markdownDescription: localize('filteredTypes.boolean', "When enabled outline shows `boolean`-symbols.")
},
'outline.showArrays': {
type: 'boolean',
default: true,
overridable: true,
scope: ConfigurationScope.RESOURCE_LANGUAGE,
markdownDescription: localize('filteredTypes.array', "When enabled outline shows `array`-symbols.")
},
'outline.showObjects': {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册