Adds tslint to VS Code using the TypeScript TSLint language service plugin.
Please refer to the tslint documentation for how to configure the linting rules.
❗ Important: If you also have the vscode-tslint extension in VS Code installed, please disable it to avoid that files are linted twice.*
This extension works out of the box with VS Code's built-in version of TypeScript. You do not need to configure the plugin in your tsconfig.json
if you are using VS Code's version of TypeScript.
If you are using a workspace version of typescript, you must currently configure the TS Server plugin manually by following these instructions
You can either configure the TSLint extension using a tsconfig
or jsconfig
as described here, or configure it with VS Code settings. This requires VS Code 1.30+ and TS 3.2+. Note the VS Code based configuration override the tsconfig
or jsconfig
configuration.
-
tslint.configFile
- The configuration file that tslint should use instead of the default tslint.json. A relative file path is resolved relative to the project root. -
tslint.jsEnable
- Enable/disable tslint for.js
files. Default isfalse
. -
tslint.ignoreDefinitionFiles
- Control if TypeScript definition files should be ignored. Default istrue
. -
tslint.alwaysShowRuleFailuresAsWarnings
- Always show rule failures as warnings, ignoring the severity configuration in the tslint.json configuration. -
tslint.suppressWhileTypeErrorsPresent
- Suppress tslint errors from being reported while other errors are present.
Differences with the vscode-TSLint extension
-
Configuration options for TSLint are specified inside the
tsconfig.json
. -
The implementation as a TypeScript server plugin enables to shares the program representation with TypeScript. This is more efficient than the current
vscode-tslint
implementation. The current TSLint implementation needs to reanalyze a document that has already been analyzed by the TypeScript language server. -
vscode-tslint
can only lint one file a time. It therefore cannot support semantic tslint rules that require the type checker. The language service plugin doesn't have this limitation. To overcome this limitation is a key motivation for reimplementing the extension. -
This extension requires that the
tslint
andtypescript
modules are installed either locally or globally. Thevscode-tslint
extension will use the tslint module that is installed closest to the linted file. To install tslint and typescript globally you can runnpm install -g tslint typescript
.