tasks.json in .settings of project root
{
"version": "0.1.0",
"command": "gulp",
"isShellCommand": true,
"tasks": [
{
"taskName": "dev",
"args": [],
"isBuildCommand": true,
"problemMatcher": [
"$tsc",
"$jshint"
]
},
{
"taskName": "tslint",
"fileLocation": ["absolute"],
"problemMatcher": [
{
"pattern": {
"regexp": "\\[[^\\]]+\\] \\[[^\\]]+\\] (\\S+) \\([^\\)]+\\) ([^\\[]+)\\[(\\d+), (\\d+)\\]: (.+)",
"file": 2,
"line": 3,
"column": 4,
"severity": 1,
"message": 5
}
}
]
}
]
}
Example output of tslint task:
[17:35:12] [gulp-tslint] error (no-unused-variable) C:\repo\IgnitionOne\stable\prototype-coresettings\src\server\controllers\userController.ts[38, 9]: unused variable: 'test'
Unescaped Regex:
\[[^\]]+\] \[[^\]]+\] (\S+) \([^\)]+\) ([^\[]+)\[(\d+), (\d+)\]: (.+)
When I test my regex on online testing tools, its pulling all the groups out properly. When I look at the problems in vs code with CTRL+SHIFT+M I see the error with file path, name, and message all being correct. However when I click on the error, I get:
Error opening 'userController.ts' (File not found).
And if I click Create File from there:
ENOENT: no such file or directory, mkdir 'c:\repo\IgnitionOne\stable\prototype-coresettings\c:'
I've looked it over with a fellow dev and it's not clear why this is happening. It's as if it's using a file location relative to workspace root and matching only 'c:' in the file group. Any ideas on what is not set up correctly?