===============================================================================
ALE TypeScript Integration                             *ale-typescript-options*


===============================================================================
eslint                                                  *ale-typescript-eslint*

Because of how TypeScript compiles code to JavaScript and how interrelated
the two languages are, the `eslint` linter for TypeScript uses the JavaScript
options for `eslint` too. See: |ale-javascript-eslint|.


===============================================================================
prettier                                              *ale-typescript-prettier*

See |ale-javascript-prettier| for information about the available options.


===============================================================================
tslint                                                  *ale-typescript-tslint*

This linter isn't recommended, because TSLint can't be used for checking for
problems while you type. You should probably use the tsserver plugin instead.
tsserver plugins are described here:
https://github.com/Microsoft/TypeScript/wiki/Writing-a-Language-Service-Plugin

Follow the instructions on the plugin website for installing it:
https://github.com/Microsoft/typescript-tslint-plugin

Then disable TSLint in vimrc or any other Vim configuration file. >
  let g:ale_linters_ignore = {'typescript': ['tslint']}
<

g:ale_typescript_tslint_executable         *g:ale_typescript_tslint_executable*
                                           *b:ale_typescript_tslint_executable*
  Type: |String|
  Default: `'tslint'`

  See |ale-integrations-local-executables|


g:ale_typescript_tslint_config_path       *g:ale_typescript_tslint_config_path*
                                          *b:ale_typescript_tslint_config_path*
  Type: |String|
  Default: `''`

  ALE will first discover the tslint.json path in an ancestor directory. If no
  such path exists, this variable will be used instead.


g:ale_typescript_tslint_ignore_empty_files
                                   *g:ale_typescript_tslint_ignore_empty_files*
                                   *b:ale_typescript_tslint_ignore_empty_files*
  Type: |Number|
  Default: `0`

  When set to `1`, ALE will not report any problems for empty files with
  TSLint. ALE will still execute TSLint for the files, but ignore any problems
  reported. This stops ALE from complaining about newly created files,
  and files where lines have been added and then removed.


g:ale_typescript_tslint_rules_dir           *g:ale_typescript_tslint_rules_dir*
                                            *b:ale_typescript_tslint_rules_dir*
  Type: |String|
  Default: `''`

  If this variable is set, ALE will use it as the rules directory for tslint.


g:ale_typescript_tslint_use_global         *g:ale_typescript_tslint_use_global*
                                           *b:ale_typescript_tslint_use_global*
  Type: |Number|
  Default: `get(g:, 'ale_use_global_executables', 0)`

  See |ale-integrations-local-executables|


===============================================================================
tsserver                                              *ale-typescript-tsserver*

g:ale_typescript_tsserver_executable     *g:ale_typescript_tsserver_executable*
                                         *b:ale_typescript_tsserver_executable*
  Type: |String|
  Default: `'tsserver'`

  ALE will first discover the tsserver path in an ancestor node_modules
  directory. If no such path exists, this variable will be used instead.

  If you wish to use only a globally installed version of tsserver, set
  |g:ale_typescript_tsserver_use_global| to `1`.


g:ale_typescript_tsserver_config_path   *g:ale_typescript_tsserver_config_path*
                                        *b:ale_typescript_tsserver_config_path*
  Type: |String|
  Default: `''`

  ALE will first discover the tsserver.json path in an ancestor directory. If
  no such path exists, this variable will be used instead.


g:ale_typescript_tsserver_use_global     *g:ale_typescript_tsserver_use_global*
                                         *b:ale_typescript_tsserver_use_global*
  Type: |Number|
  Default: `get(g:, 'ale_use_global_executables', 0)`

  This variable controls whether or not ALE will search for a local path for
  tsserver first. If this variable is set to `1`, then ALE will always use the
  global version of tsserver, in preference to locally installed versions of
  tsserver in node_modules.


===============================================================================
  vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
