当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript configuration.IConfigurationService类代码示例

本文整理汇总了TypeScript中vs/platform/configuration/common/configuration.IConfigurationService的典型用法代码示例。如果您正苦于以下问题:TypeScript IConfigurationService类的具体用法?TypeScript IConfigurationService怎么用?TypeScript IConfigurationService使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了IConfigurationService类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: isUIExtension

export function isUIExtension(manifest: IExtensionManifest, uiContributions: string[], configurationService: IConfigurationService): boolean {
	const extensionId = getGalleryExtensionId(manifest.publisher, manifest.name);
	const configuredUIExtensions = configurationService.getValue<string[]>('_workbench.uiExtensions') || [];
	if (configuredUIExtensions.length) {
		if (configuredUIExtensions.indexOf(extensionId) !== -1) {
			return true;
		}
		if (configuredUIExtensions.indexOf(`-${extensionId}`) !== -1) {
			return false;
		}
	}
	switch (manifest.extensionKind) {
		case 'ui': return true;
		case 'workspace': return false;
		default: {
			if (isNonEmptyArray(product.uiExtensions) && product.uiExtensions.some(id => areSameExtensions({ id }, { id: extensionId }))) {
				return true;
			}
			if (manifest.main) {
				return false;
			}
			if (manifest.contributes) {
				if (!uiContributions.length || Object.keys(manifest.contributes).some(contribution => uiContributions.indexOf(contribution) === -1)) {
					return false;
				}
			}
			// Default is UI Extension
			return true;
		}
	}
}
开发者ID:joelday,项目名称:vscode,代码行数:31,代码来源:extensionsUtil.ts

示例2: configurationTelemetry

export function configurationTelemetry(telemetryService: ITelemetryService, configurationService: IConfigurationService): IDisposable {
	return configurationService.onDidChangeConfiguration(event => {
		if (event.source !== ConfigurationTarget.DEFAULT) {
			/* __GDPR__
				"updateConfiguration" : {
					"configurationSource" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" },
					"configurationKeys": { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
				}
			*/
			telemetryService.publicLog('updateConfiguration', {
				configurationSource: ConfigurationTarget[event.source],
				configurationKeys: flattenKeys(event.sourceConfig)
			});
			/* __GDPR__
				"updateConfigurationValues" : {
					"configurationSource" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" },
					"configurationValues": { "classification": "CustomerContent", "purpose": "FeatureInsight" }
				}
			*/
			telemetryService.publicLog('updateConfigurationValues', {
				configurationSource: ConfigurationTarget[event.source],
				configurationValues: flattenValues(event.sourceConfig, configurationValueWhitelist)
			});
		}
	});
}
开发者ID:AllureFer,项目名称:vscode,代码行数:26,代码来源:telemetryUtils.ts

示例3: isUIExtension

export function isUIExtension(manifest: IExtensionManifest, configurationService: IConfigurationService): boolean {
	const extensionId = getGalleryExtensionId(manifest.publisher, manifest.name);
	const configuredUIExtensions = configurationService.getValue<string[]>('_workbench.uiExtensions') || [];
	if (configuredUIExtensions.length) {
		if (configuredUIExtensions.indexOf(extensionId) !== -1) {
			return true;
		}
		if (configuredUIExtensions.indexOf(`-${extensionId}`) !== -1) {
			return false;
		}
	}
	switch (manifest.extensionKind) {
		case 'ui': return true;
		case 'workspace': return false;
		default: {
			if (uiExtensions.has(extensionId)) {
				return true;
			}
			if (manifest.main) {
				return false;
			}
			if (manifest.contributes && isNonEmptyArray(manifest.contributes.debuggers)) {
				return false;
			}
			// Default is UI Extension
			return true;
		}
	}
}
开发者ID:VishalMadhvani,项目名称:vscode,代码行数:29,代码来源:extensions.ts

示例4: preferredSideBySideGroupDirection

export function preferredSideBySideGroupDirection(configurationService: IConfigurationService): GroupDirection.DOWN | GroupDirection.RIGHT {
	const openSideBySideDirection = configurationService.getValue<'right' | 'down'>('workbench.editor.openSideBySideDirection');

	if (openSideBySideDirection === 'down') {
		return GroupDirection.DOWN;
	}

	return GroupDirection.RIGHT;
}
开发者ID:liunian,项目名称:vscode,代码行数:9,代码来源:editorGroupsService.ts

示例5: applyOverrides

export function applyOverrides(configurationService: IConfigurationService, experiments: ITelemetryExperiments): ITelemetryExperiments {
	const config: any = configurationService.getConfiguration('telemetry');
	const experimentsConfig = config && config.experiments || {};
	Object.keys(experiments).forEach(key => {
		if (key in experimentsConfig) {
			experiments[key] = experimentsConfig[key];
		}
	});
	return experiments;
}
开发者ID:asotog,项目名称:vscode,代码行数:10,代码来源:telemetry.ts

示例6: getFontFamily

	/**
	 * Set the terminal font to `terminal.integrated.fontFamily` if it is set, otherwise fallback to
	 * `editor.fontFamily`.
	 */
	public getFontFamily(): string {
		let terminalConfig = this.configurationService.getConfiguration<ITerminalConfiguration>();
		let fontFamily = terminalConfig.terminal.integrated.fontFamily;
		if (!fontFamily) {
			let editorConfig = this.configurationService.getConfiguration<IConfiguration>();
			fontFamily = editorConfig.editor.fontFamily;
		}
		return fontFamily;
	}
开发者ID:CPoirot3,项目名称:vscode,代码行数:13,代码来源:terminalConfigHelper.ts

示例7: getFont

	/**
	 * Gets the font information based on the terminal.integrated.fontFamily,
	 * terminal.integrated.fontSize, terminal.integrated.lineHeight configuration properties
	 */
	public getFont(): ITerminalFont {
		let terminalConfig = this.configurationService.getConfiguration<ITerminalConfiguration>().terminal.integrated;
		let editorConfig = this.configurationService.getConfiguration<IConfiguration>();

		let fontFamily = terminalConfig.fontFamily || editorConfig.editor.fontFamily;
		let fontSize = this.toInteger(terminalConfig.fontSize, 0) || editorConfig.editor.fontSize;
		let lineHeight = this.toInteger(terminalConfig.lineHeight, 0);

		return this.measureFont(fontFamily, fontSize + 'px', lineHeight === 0 ? 'normal' : lineHeight + 'px');
	}
开发者ID:simgish,项目名称:vscode,代码行数:14,代码来源:terminalConfigHelper.ts

示例8: getFont

	/**
	 * Gets the font information based on the terminal.integrated.fontFamily,
	 * terminal.integrated.fontSize, terminal.integrated.lineHeight configuration properties
	 */
	public getFont(): ITerminalFont {
		let terminalConfig = this.configurationService.getConfiguration<ITerminalConfiguration>().terminal.integrated;
		let editorConfig = this.configurationService.getConfiguration<IConfiguration>();

		let fontFamily = terminalConfig.fontFamily || editorConfig.editor.fontFamily;
		let fontSize = this.toInteger(terminalConfig.fontSize, 0) || editorConfig.editor.fontSize;
		if (fontSize <= 0) {
			fontSize = DefaultConfig.editor.fontSize;
		}
		let lineHeight = this.toInteger(terminalConfig.lineHeight, DEFAULT_LINE_HEIGHT);

		return this.measureFont(fontFamily, fontSize, lineHeight <= 0 ? DEFAULT_LINE_HEIGHT : lineHeight);
	}
开发者ID:bobmagicii,项目名称:vscode,代码行数:17,代码来源:terminalConfigHelper.ts

示例9: getFont

	/**
	 * Gets the font information based on the terminal.integrated.fontFamily,
	 * terminal.integrated.fontSize, terminal.integrated.lineHeight configuration properties
	 */
	public getFont(): ITerminalFont {
		let terminalConfig = this.configurationService.getConfiguration<ITerminalConfiguration>().terminal.integrated;
		let editorConfig = this.configurationService.getConfiguration<IConfiguration>();

		let fontFamily = terminalConfig.fontFamily || editorConfig.editor.fontFamily;
		let fontSize = this.toInteger(terminalConfig.fontSize, 0) || editorConfig.editor.fontSize;
		let lineHeight = this.toInteger(terminalConfig.lineHeight, 0) || editorConfig.editor.lineHeight;

		if (lineHeight === 0) {
			lineHeight = Math.round(GOLDEN_LINE_HEIGHT_RATIO * fontSize);
		}

		return this.neasureFont(fontFamily, fontSize, lineHeight);
	}
开发者ID:caozhaocao,项目名称:vscode,代码行数:18,代码来源:terminalConfigHelper.ts

示例10: Function

		return value.replace(regexp, (match: string, name: string) => {
			let config = this.configurationService.getConfiguration();
			let newValue = new Function('_', 'try {return _.' + name + ';} catch (ex) { return "";}')(config);
			if (Types.isString(newValue)) {
				// Prevent infinite recursion and also support nested references (or tokens)
				return newValue === originalValue ? '' : this.resolveString(newValue);
			} else {
				return this.resolve(newValue) + '';
			}
		});
开发者ID:GYGit,项目名称:vscode,代码行数:10,代码来源:configVariables.ts


注:本文中的vs/platform/configuration/common/configuration.IConfigurationService类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。