src/vs/workbench/contrib/localizations/browser/localizationsActions.ts/ConfigureLocaleAction/run
class ConfigureLocaleAction:	public override async run(): Promise<void> {
		const languageOptions = await this.getLanguageOptions();
		const currentLanguageIndex = languageOptions.findIndex(l => l.label === language);

		try {
			const selectedLanguage = await this.quickInputService.pick(languageOptions,
				{
					canPickMany: false,
					placeHolder: localize('chooseDisplayLanguage', "Select Display Language"),
					activeItem: languageOptions[currentLanguageIndex]
				});

			if (selectedLanguage === languageOptions[languageOptions.length - 1]) {
				return this.viewletService.openViewlet(EXTENSIONS_VIEWLET_ID, true)
					.then(viewlet => viewlet?.getViewPaneContainer())
					.then(viewlet => {
						const extensionsViewlet = viewlet as IExtensionsViewPaneContainer;
						extensionsViewlet.search('@category:"language packs"');
						extensionsViewlet.focus();
					});
			}

			if (selectedLanguage) {
				await this.jsonEditingService.write(this.environmentService.argvResource, [{ path: ['locale'], value: selectedLanguage.label }], true);
				const restart = await this.dialogService.confirm({
					type: 'info',
					message: localize('relaunchDisplayLanguageMessage', "A restart is required for the change in display language to take effect."),
					detail: localize('relaunchDisplayLanguageDetail', "Press the restart button to restart {0} and change the display language.", this.productService.nameLong),
					primaryButton: localize('restart', "&&Restart")
				});

				if (restart.confirmed) {
					this.hostService.restart();
				}
			}
		} catch (e) {
			this.notificationService.error(e);
		}
	}