Dlaczego mój problemMatcher działa? Jestem całkiem pewien regex, ale nie zgłasza żadnych problemów, nawet istnieją pewne na standardowe wyjście ...Dlaczego ten problem nie działa w kodzie VS?
// the matcher
"problemMatcher": {
"owner": "typescript",
"fileLocation": ["relative", "${workspaceRoot}"],
"pattern": {
"regexp": "^TypeScript (warning|error): (.*)\\((\\d+),(\\d+)\\): (.*)$",
"severity": 1,
"file": 2,
"line": 3,
"column": 4,
"message": 5
}
}
//the browserify/tsify pipeline
browserify().add('main.ts')
.plugin(tsify, { noImplicitAny: false, removeComments:true })
.transform("babelify",{ extensions: ['.ts'], presets: ["es2015"]})
.bundle()
.on('error', function (error) { console.log(error.toString()); })
.pipe(source('bundle.js'))
.pipe(gulp.dest('www/js/dist/'));
//gulp sample output
[00:39:00] Starting 'ts-compile'...
TypeScript error: main.ts(118,30): Error TS2339: Property 'object' does not exist on type 'boolean'.
TypeScript error: main.ts(137,24): Error TS2339: Property 'object' does not exist on type 'boolean'.
TypeScript error: main.ts(507,44): Error TS2304: Cannot find name 'loading'.
[00:39:03] Finished 'ts-compile' after 2.98 s
Wszystkie biblioteki regex wydają się różnić w swoich szczegółach. Jeśli regex jest w błędzie, podejrzewam, że operator alternatywny '|' ma wyższy priorytet niż oczekiwano. Spróbuj '((ostrzeżenie) | (błąd)) i sprawdź, czy to coś zmieni. – eh9
@santa Regex działa naprawdę. Jestem w stanie uzyskać bezproblemowe błędy dla przykładowego wyjścia w VSCode przy użyciu narzędzia do rozwiązywania problemów. Jak wygląda twój plik tasks.json? – Wosi
już znalazłem mój problem @Wosi musiałem umieścić tasks.json w folderze .vscode (który zawierał domyślny, który sprawił, że myślę, że moje było używane w pierwszej kolejności) – santa