From 16dd2ea54c3f65cf64c5b95dd5e8ee62867f1b98 Mon Sep 17 00:00:00 2001 From: Alex Ross Date: Fri, 26 Jun 2020 17:24:58 +0200 Subject: [PATCH] Fix configure tasks Fixes #101022 --- .../contrib/tasks/browser/abstractTaskService.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts index 8e599fdb72f..abcd2e4fbdc 100644 --- a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts +++ b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts @@ -1064,9 +1064,9 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer const eol = model.getEOL(); const edits = format(JSON.stringify(task), undefined, { eol, tabSize, insertSpaces }); let stringified = applyEdits(JSON.stringify(task), edits); - const regex = new RegExp(eol + '\\t', 'g'); - stringified = stringified.replace(regex, eol + '\t\t\t'); - const twoTabs = '\t\t'; + const regex = new RegExp(eol + (insertSpaces ? strings.repeat(' ', tabSize) : '\\t'), 'g'); + stringified = stringified.replace(regex, eol + (insertSpaces ? strings.repeat(' ', tabSize * 3) : '\t\t\t')); + const twoTabs = insertSpaces ? strings.repeat(' ', tabSize * 2) : '\t\t'; stringValue = twoTabs + stringified.slice(0, stringified.length - 1) + twoTabs + stringified.slice(stringified.length - 1); } finally { if (reference) { @@ -1089,7 +1089,7 @@ export abstract class AbstractTaskService extends Disposable implements ITaskSer const contentValue = content.toString(); let stringValue: string | undefined; if (configIndex !== -1) { - const json: TaskConfig.ExternalTaskRunnerConfiguration = JSON.parse(contentValue); + const json: TaskConfig.ExternalTaskRunnerConfiguration = this.configurationService.getValue('tasks', { resource }); if (json.tasks && (json.tasks.length > configIndex)) { stringValue = await this.formatTaskForJson(resource, json.tasks[configIndex]); }