package.json 22.3 KB
Newer Older
E
Erich Gamma 已提交
1
{
2
  "name": "typescript-language-features",
3 4
  "description": "%description%",
  "displayName": "%displayName%",
M
Matt Bierner 已提交
5
  "version": "1.0.0",
M
Matt Bierner 已提交
6
  "icon": "icon.png",
7
  "author": "vscode",
8
  "publisher": "vscode",
9
  "license": "MIT",
10
  "aiKey": "AIF-d9b70cd4-b9f9-4d70-929b-a071c400b217",
11
  "enableProposedApi": true,
12 13 14
  "engines": {
    "vscode": "*"
  },
M
Matt Bierner 已提交
15 16 17
  "categories": [
    "Programming Languages"
  ],
18
  "dependencies": {
19
    "jsonc-parser": "^2.0.1",
20
    "semver": "4.3.6",
21
    "vscode-extension-telemetry": "0.0.17",
22
    "vscode-nls": "^3.2.4"
23 24
  },
  "devDependencies": {
25
    "@types/node": "8.0.33",
26 27
    "@types/semver": "5.4.0",
    "vscode": "^1.1.10"
28 29
  },
  "scripts": {
30
    "vscode:prepublish": "node ../../node_modules/gulp/bin/gulp.js --gulpfile ../../build/gulpfile.extensions.js compile-extension:typescript ./tsconfig.json"
31 32 33 34 35 36 37 38 39
  },
  "activationEvents": [
    "onLanguage:javascript",
    "onLanguage:javascriptreact",
    "onLanguage:typescript",
    "onLanguage:typescriptreact",
    "onLanguage:jsx-tags",
    "onCommand:typescript.reloadProjects",
    "onCommand:javascript.reloadProjects",
40 41
    "onCommand:typescript.selectTypeScriptVersion",
    "onCommand:javascript.goToProjectConfig",
42
    "onCommand:typescript.goToProjectConfig",
M
Matt Bierner 已提交
43
    "onCommand:typescript.openTsServerLog",
44 45 46 47 48
    "onCommand:workbench.action.tasks.runTask",
    "workspaceContains:**/tsconfig.json",
    "workspaceContains:**/jsconfig.json",
    "workspaceContains:**/tsconfig.*.json",
    "workspaceContains:**/jsconfig.*.json"
49
  ],
50
  "main": "./out/extension",
51
  "contributes": {
52 53 54 55 56 57
    "jsonValidation": [
      {
        "fileMatch": "package.json",
        "url": "./schemas/package.schema.json"
      }
    ],
58 59 60 61 62 63 64 65 66 67 68
    "configuration": {
      "type": "object",
      "title": "%configuration.typescript%",
      "order": 20,
      "properties": {
        "typescript.tsdk": {
          "type": [
            "string",
            "null"
          ],
          "default": null,
69 70
          "description": "%typescript.tsdk.desc%",
          "scope": "window"
71 72 73 74
        },
        "typescript.disableAutomaticTypeAcquisition": {
          "type": "boolean",
          "default": false,
75
          "description": "%typescript.disableAutomaticTypeAcquisition%",
76
          "scope": "window",
77
          "tags": ["usesOnlineServices"]
78
        },
M
Matt Bierner 已提交
79 80 81 82 83 84
        "typescript.npm": {
          "type": [
            "string",
            "null"
          ],
          "default": null,
85
          "description": "%typescript.npm%",
S
Sandeep Somavarapu 已提交
86
          "scope": "application"
M
Matt Bierner 已提交
87
        },
88
        "typescript.check.npmIsInstalled": {
J
Johannes Rieken 已提交
89 90
          "type": "boolean",
          "default": true,
91 92
          "description": "%typescript.check.npmIsInstalled%",
          "scope": "window"
J
Johannes Rieken 已提交
93
        },
94
        "javascript.referencesCodeLens.enabled": {
95 96
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
97 98
          "description": "%javascript.referencesCodeLens.enabled%",
          "scope": "window"
99 100 101
        },
        "typescript.referencesCodeLens.enabled": {
          "type": "boolean",
M
Matt Bierner 已提交
102
          "default": false,
M
Matt Bierner 已提交
103 104
          "description": "%typescript.referencesCodeLens.enabled%",
          "scope": "window"
105
        },
106 107 108
        "typescript.implementationsCodeLens.enabled": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
109 110
          "description": "%typescript.implementationsCodeLens.enabled%",
          "scope": "window"
111
        },
112 113 114 115 116 117 118 119 120
        "typescript.tsserver.log": {
          "type": "string",
          "enum": [
            "off",
            "terse",
            "normal",
            "verbose"
          ],
          "default": "off",
M
Matt Bierner 已提交
121 122
          "description": "%typescript.tsserver.log%",
          "scope": "window"
123
        },
124 125 126 127 128 129 130 131
        "typescript.tsserver.pluginPaths": {
          "type": "array",
          "items": {
            "type": "string",
            "description": "%typescript.tsserver.pluginPaths.item%"
          },
          "default": [],
          "description": "%typescript.tsserver.pluginPaths%",
S
Sandeep Somavarapu 已提交
132
          "scope": "application"
133
        },
134 135 136 137 138 139 140 141
        "typescript.tsserver.trace": {
          "type": "string",
          "enum": [
            "off",
            "messages",
            "verbose"
          ],
          "default": "off",
M
Matt Bierner 已提交
142 143
          "description": "%typescript.tsserver.trace%",
          "scope": "window"
144 145 146 147
        },
        "typescript.useCodeSnippetsOnMethodSuggest": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
148 149
          "description": "%typescript.useCodeSnippetsOnMethodSuggest.dec%",
          "scope": "resource"
150
        },
151 152 153 154 155 156
        "typescript.reportStyleChecksAsWarnings": {
          "type": "boolean",
          "default": true,
          "description": "%typescript.reportStyleChecksAsWarnings%",
          "scope": "window"
        },
157 158 159
        "typescript.validate.enable": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
160
          "description": "%typescript.validate.enable%",
161
          "scope": "window"
162 163 164 165
        },
        "typescript.format.enable": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
166
          "description": "%typescript.format.enable%",
167
          "scope": "window"
168 169 170 171
        },
        "typescript.format.insertSpaceAfterCommaDelimiter": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
172 173
          "description": "%format.insertSpaceAfterCommaDelimiter%",
          "scope": "resource"
174
        },
175 176 177
        "typescript.format.insertSpaceAfterConstructor": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
178 179
          "description": "%format.insertSpaceAfterConstructor%",
          "scope": "resource"
180
        },
181 182 183
        "typescript.format.insertSpaceAfterSemicolonInForStatements": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
184 185
          "description": "%format.insertSpaceAfterSemicolonInForStatements%",
          "scope": "resource"
186 187 188 189
        },
        "typescript.format.insertSpaceBeforeAndAfterBinaryOperators": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
190 191
          "description": "%format.insertSpaceBeforeAndAfterBinaryOperators%",
          "scope": "resource"
192 193 194 195
        },
        "typescript.format.insertSpaceAfterKeywordsInControlFlowStatements": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
196 197
          "description": "%format.insertSpaceAfterKeywordsInControlFlowStatements%",
          "scope": "resource"
198 199 200 201
        },
        "typescript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
202 203
          "description": "%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%",
          "scope": "resource"
204
        },
205 206 207
        "typescript.format.insertSpaceBeforeFunctionParenthesis": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
208 209
          "description": "%format.insertSpaceBeforeFunctionParenthesis%",
          "scope": "resource"
210
        },
211 212 213
        "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
214 215
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis%",
          "scope": "resource"
216 217 218 219
        },
        "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
220 221
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets%",
          "scope": "resource"
222
        },
223 224
        "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": {
          "type": "boolean",
225
          "default": true,
M
Matt Bierner 已提交
226 227
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces%",
          "scope": "resource"
228
        },
229 230 231
        "typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
232 233
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces%",
          "scope": "resource"
234 235 236 237
        },
        "typescript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
238 239
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces%",
          "scope": "resource"
240
        },
241 242 243
        "typescript.format.insertSpaceAfterTypeAssertion": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
244 245
          "description": "%format.insertSpaceAfterTypeAssertion%",
          "scope": "resource"
246
        },
247 248 249
        "typescript.format.placeOpenBraceOnNewLineForFunctions": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
250 251
          "description": "%format.placeOpenBraceOnNewLineForFunctions%",
          "scope": "resource"
252 253 254 255
        },
        "typescript.format.placeOpenBraceOnNewLineForControlBlocks": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
256 257
          "description": "%format.placeOpenBraceOnNewLineForControlBlocks%",
          "scope": "resource"
258 259 260 261
        },
        "javascript.validate.enable": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
262
          "description": "%javascript.validate.enable%",
263
          "scope": "window"
264 265 266 267
        },
        "javascript.format.enable": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
268
          "description": "%javascript.format.enable%",
269
          "scope": "window"
270 271 272 273
        },
        "javascript.format.insertSpaceAfterCommaDelimiter": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
274 275
          "description": "%format.insertSpaceAfterCommaDelimiter%",
          "scope": "resource"
276
        },
277 278 279
        "javascript.format.insertSpaceAfterConstructor": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
280 281
          "description": "%format.insertSpaceAfterConstructor%",
          "scope": "resource"
282
        },
283 284 285
        "javascript.format.insertSpaceAfterSemicolonInForStatements": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
286 287
          "description": "%format.insertSpaceAfterSemicolonInForStatements%",
          "scope": "resource"
288 289 290 291
        },
        "javascript.format.insertSpaceBeforeAndAfterBinaryOperators": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
292 293
          "description": "%format.insertSpaceBeforeAndAfterBinaryOperators%",
          "scope": "resource"
294 295 296 297
        },
        "javascript.format.insertSpaceAfterKeywordsInControlFlowStatements": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
298 299
          "description": "%format.insertSpaceAfterKeywordsInControlFlowStatements%",
          "scope": "resource"
300 301 302 303
        },
        "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
304 305
          "description": "%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%",
          "scope": "resource"
306
        },
307 308 309
        "javascript.format.insertSpaceBeforeFunctionParenthesis": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
310 311
          "description": "%format.insertSpaceBeforeFunctionParenthesis%",
          "scope": "resource"
312
        },
313 314 315
        "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
316 317
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis%",
          "scope": "resource"
318 319 320 321
        },
        "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
322 323
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets%",
          "scope": "resource"
324
        },
325 326
        "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": {
          "type": "boolean",
327
          "default": true,
M
Matt Bierner 已提交
328 329
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces%",
          "scope": "resource"
330
        },
331 332 333
        "javascript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
334 335
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces%",
          "scope": "resource"
336 337 338 339
        },
        "javascript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
340 341
          "description": "%format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces%",
          "scope": "resource"
342 343 344 345
        },
        "javascript.format.placeOpenBraceOnNewLineForFunctions": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
346 347
          "description": "%format.placeOpenBraceOnNewLineForFunctions%",
          "scope": "resource"
348 349 350 351
        },
        "javascript.format.placeOpenBraceOnNewLineForControlBlocks": {
          "type": "boolean",
          "default": false,
M
Matt Bierner 已提交
352 353
          "description": "%format.placeOpenBraceOnNewLineForControlBlocks%",
          "scope": "resource"
354 355 356 357
        },
        "jsDocCompletion.enabled": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
358 359
          "description": "%jsDocCompletion.enabled%",
          "scope": "resource"
360 361 362 363
        },
        "javascript.implicitProjectConfig.checkJs": {
          "type": "boolean",
          "default": false,
364
          "description": "%javascript.implicitProjectConfig.checkJs%",
365
          "scope": "window"
366 367 368 369 370
        },
        "javascript.implicitProjectConfig.experimentalDecorators": {
          "type": "boolean",
          "default": false,
          "description": "%javascript.implicitProjectConfig.experimentalDecorators%",
371
          "scope": "window"
372 373 374 375
        },
        "javascript.nameSuggestions": {
          "type": "boolean",
          "default": true,
M
Matt Bierner 已提交
376 377
          "description": "%javascript.nameSuggestions%",
          "scope": "resource"
378 379 380 381 382 383
        },
        "typescript.tsc.autoDetect": {
          "type": "string",
          "default": "on",
          "enum": [
            "on",
384
            "off",
385 386 387
            "build",
            "watch"
          ],
388 389 390 391 392 393
          "enumDescriptions": [
            "%typescript.tsc.autoDetect.on%",
            "%typescript.tsc.autoDetect.off%",
            "%typescript.tsc.autoDetect.build%",
            "%typescript.tsc.autoDetect.watch%"
          ],
394
          "description": "%typescript.tsc.autoDetect%",
M
Matt Bierner 已提交
395
          "scope": "window"
396 397 398 399 400 401
        },
        "typescript.quickSuggestionsForPaths": {
          "type": "boolean",
          "default": true,
          "description": "%typescript.quickSuggestionsForPaths%",
          "scope": "resource"
402
        },
403 404 405 406 407 408
        "typescript.autoImportSuggestions.enabled": {
          "type": "boolean",
          "default": true,
          "description": "%typescript.autoImportSuggestions.enabled%",
          "scope": "resource"
        },
409 410 411 412 413
        "typescript.locale": {
          "type": [
            "string",
            "null"
          ],
M
Matt Bierner 已提交
414 415 416 417 418 419 420 421 422 423 424 425 426
          "enum": [
            "de",
            "es",
            "en",
            "fr",
            "it",
            "ja",
            "ko",
            "ru",
            "zh-CN",
            "zh-TW",
            null
          ],
427 428 429
          "default": null,
          "description": "%typescript.locale%",
          "scope": "window"
430
        },
431 432 433 434
        "javascript.suggestionActions.enabled": {
          "type": "boolean",
          "default": true,
          "description": "%javascript.suggestionActions.enabled%",
435
          "scope": "resource"
436 437 438 439 440
        },
        "typescript.suggestionActions.enabled": {
          "type": "boolean",
          "default": true,
          "description": "%typescript.suggestionActions.enabled%",
441
          "scope": "resource"
M
Matt Bierner 已提交
442 443 444 445
        },
        "javascript.preferences.quoteStyle": {
          "type": "string",
          "enum": [
446
            "auto",
M
Matt Bierner 已提交
447 448 449
            "single",
            "double"
          ],
450
          "default": "auto",
M
Matt Bierner 已提交
451
          "description": "%typescript.preferences.quoteStyle%",
452
          "scope": "resource"
M
Matt Bierner 已提交
453 454 455 456
        },
        "typescript.preferences.quoteStyle": {
          "type": "string",
          "enum": [
457
            "auto",
M
Matt Bierner 已提交
458 459 460
            "single",
            "double"
          ],
461
          "default": "auto",
M
Matt Bierner 已提交
462
          "description": "%typescript.preferences.quoteStyle%",
463
          "scope": "resource"
464 465 466 467
        },
        "javascript.preferences.importModuleSpecifier": {
          "type": "string",
          "enum": [
468
            "auto",
469 470 471
            "relative",
            "non-relative"
          ],
M
Matt Bierner 已提交
472 473 474 475 476
          "enumDescriptions": [
            "%typescript.preferences.importModuleSpecifier.auto%",
            "%typescript.preferences.importModuleSpecifier.relative%",
            "%typescript.preferences.importModuleSpecifier.nonRelative%"
          ],
477
          "default": "auto",
478
          "description": "%typescript.preferences.importModuleSpecifier%",
479
          "scope": "resource"
480 481 482 483
        },
        "typescript.preferences.importModuleSpecifier": {
          "type": "string",
          "enum": [
484
            "auto",
485 486 487
            "relative",
            "non-relative"
          ],
488
          "default": "auto",
489
          "description": "%typescript.preferences.importModuleSpecifier%",
490
          "scope": "resource"
491
        },
492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512
        "typescript.updateImportsOnFileMove.enabled": {
          "type": "string",
          "enum": [
            "prompt",
            "always",
            "never"
          ],
          "default": "prompt",
          "description": "%typescript.updateImportsOnFileMove.enabled%",
          "scope": "resource"
        },
        "javascript.updateImportsOnFileMove.enabled": {
          "type": "string",
          "enum": [
            "prompt",
            "always",
            "never"
          ],
          "default": "prompt",
          "description": "%typescript.updateImportsOnFileMove.enabled%",
          "scope": "resource"
513 514 515 516 517 518 519 520 521 522
        },
        "typescript.autoClosingTags": {
          "type": "boolean",
          "default": true,
          "description": "%typescript.autoClosingTags%"
        },
        "javascript.autoClosingTags": {
          "type": "boolean",
          "default": true,
          "description": "%typescript.autoClosingTags%"
523 524 525 526 527 528
        }
      }
    },
    "commands": [
      {
        "command": "typescript.reloadProjects",
529
        "title": "%reloadProjects.title%",
530
        "category": "TypeScript"
531 532 533
      },
      {
        "command": "javascript.reloadProjects",
534
        "title": "%reloadProjects.title%",
535
        "category": "JavaScript"
536 537 538
      },
      {
        "command": "typescript.selectTypeScriptVersion",
539
        "title": "%typescript.selectTypeScriptVersion.title%",
540 541 542 543
        "category": "TypeScript"
      },
      {
        "command": "typescript.goToProjectConfig",
544
        "title": "%goToProjectConfig.title%",
545 546
        "category": "TypeScript"
      },
M
Matt Bierner 已提交
547
      {
548
        "command": "javascript.goToProjectConfig",
549
        "title": "%goToProjectConfig.title%",
550
        "category": "JavaScript"
551 552 553
      },
      {
        "command": "typescript.openTsServerLog",
554
        "title": "%typescript.openTsServerLog.title%",
555
        "category": "TypeScript"
556 557 558
      },
      {
        "command": "typescript.restartTsServer",
559
        "title": "%typescript.restartTsServer%",
560
        "category": "TypeScript"
561
      }
562
    ],
563 564 565 566
    "menus": {
      "commandPalette": [
        {
          "command": "typescript.reloadProjects",
567
          "when": "editorLangId == typescript && typescript.isManagedFile"
568 569 570
        },
        {
          "command": "typescript.reloadProjects",
571
          "when": "editorLangId == typescriptreact && typescript.isManagedFile"
572 573 574
        },
        {
          "command": "javascript.reloadProjects",
575
          "when": "editorLangId == javascript && typescript.isManagedFile"
576 577 578
        },
        {
          "command": "javascript.reloadProjects",
579
          "when": "editorLangId == javascriptreact && typescript.isManagedFile"
580 581 582
        },
        {
          "command": "typescript.goToProjectConfig",
583
          "when": "editorLangId == typescript && typescript.isManagedFile"
584 585 586 587 588 589
        },
        {
          "command": "typescript.goToProjectConfig",
          "when": "editorLangId == typescriptreact"
        },
        {
590
          "command": "javascript.goToProjectConfig",
591
          "when": "editorLangId == javascript && typescript.isManagedFile"
592 593
        },
        {
594
          "command": "javascript.goToProjectConfig",
595
          "when": "editorLangId == javascriptreact && typescript.isManagedFile"
596 597 598 599 600 601 602 603 604 605 606 607
        },
        {
          "command": "typescript.selectTypeScriptVersion",
          "when": "typescript.isManagedFile"
        },
        {
          "command": "typescript.openTsServerLog",
          "when": "typescript.isManagedFile"
        },
        {
          "command": "typescript.restartTsServer",
          "when": "typescript.isManagedFile"
608 609 610
        }
      ]
    },
611 612 613 614 615 616 617 618
    "breakpoints": [
      {
        "language": "typescript"
      },
      {
        "language": "typescriptreact"
      }
    ],
D
Dirk Baeumer 已提交
619
    "taskDefinitions": [
D
Dirk Baeumer 已提交
620 621
      {
        "type": "typescript",
622 623 624
        "required": [
          "tsconfig"
        ],
D
Dirk Baeumer 已提交
625 626 627
        "properties": {
          "tsconfig": {
            "type": "string",
628
            "description": "%taskDefinition.tsconfig.description%"
629 630 631
          },
          "option": {
            "type": "string"
D
Dirk Baeumer 已提交
632 633 634 635
          }
        }
      }
    ],
636 637 638
    "problemPatterns": [
      {
        "name": "tsc",
639
        "regexp": "^([^\\s].*)[\\(:](\\d+)[,:](\\d+)(?:\\):\\s+|\\s+-\\s+)(error|warning|info)\\s+(TS\\d+)\\s*:\\s*(.*)$",
640
        "file": 1,
641 642 643 644 645
        "line": 2,
        "column": 3,
        "severity": 4,
        "code": 5,
        "message": 6
646 647 648 649 650
      }
    ],
    "problemMatchers": [
      {
        "name": "tsc",
651
        "label": "%typescript.problemMatchers.tsc.label%",
652
        "owner": "typescript",
653
        "source": "ts",
654
        "applyTo": "closedDocuments",
J
Johannes Rieken 已提交
655 656 657 658 659
        "fileLocation": [
          "relative",
          "${cwd}"
        ],
        "pattern": "$tsc"
660 661 662
      },
      {
        "name": "tsc-watch",
663
        "label": "%typescript.problemMatchers.tscWatch.label%",
664
        "owner": "typescript",
665
        "source": "ts",
666
        "applyTo": "closedDocuments",
J
Johannes Rieken 已提交
667 668 669 670
        "fileLocation": [
          "relative",
          "${cwd}"
        ],
671
        "pattern": "$tsc",
672
        "background": {
673 674
          "activeOnStart": true,
          "beginsPattern": {
675
            "regexp": "^\\s*(?:message TS6032:|\\[?\\d{1,2}:\\d{1,2}:\\d{1,2}(?: AM| PM| a\\.m\\.| p\\.m\\.)?(?:\\]| -)) File change detected\\. Starting incremental compilation\\.\\.\\."
676 677
          },
          "endsPattern": {
678
            "regexp": "^\\s*(?:message TS6042:|\\[?\\d{1,2}:\\d{1,2}:\\d{1,2}(?: AM| PM| a\\.m\\.| p\\.m\\.)?(?:\\]| -)) (?:Compilation complete\\.|Found \\d+ errors?\\.) Watching for file changes\\."
679 680 681
          }
        }
      }
682 683
    ]
  }
684
}