diff options
author | Carlos Ramos <carakan@gmail.com> | 2017-10-16 00:53:17 -0400 |
---|---|---|
committer | Carlos Ramos <carakan@gmail.com> | 2017-10-16 00:53:17 -0400 |
commit | 07ebfbeef0ac3eb895182675c87cd5324bd3bf3c (patch) | |
tree | 429d613326f6cc819578396569beaefddcacb921 /autoload | |
parent | a790077136ac3830e959a8215419dfb09340cea4 (diff) | |
download | ale-07ebfbeef0ac3eb895182675c87cd5324bd3bf3c.zip |
Add new fixer tslint for typescript, fixes #932
Diffstat (limited to 'autoload')
-rw-r--r-- | autoload/ale/fix/registry.vim | 5 | ||||
-rw-r--r-- | autoload/ale/fixers/tslint.vim | 22 |
2 files changed, 27 insertions, 0 deletions
diff --git a/autoload/ale/fix/registry.vim b/autoload/ale/fix/registry.vim index 93c0860d..93ddf0f5 100644 --- a/autoload/ale/fix/registry.vim +++ b/autoload/ale/fix/registry.vim @@ -102,6 +102,11 @@ let s:default_registry = { \ 'suggested_filetypes': ['go'], \ 'description': 'Fix Go files with go fmt.', \ }, +\ 'tslint': { +\ 'function': 'ale#fixers#tslint#Fix', +\ 'suggested_filetypes': ['typescript'], +\ 'description': 'Fix typescript files with tslint --fix.', +\ }, \} " Reset the function registry to the default entries. diff --git a/autoload/ale/fixers/tslint.vim b/autoload/ale/fixers/tslint.vim new file mode 100644 index 00000000..4d905a08 --- /dev/null +++ b/autoload/ale/fixers/tslint.vim @@ -0,0 +1,22 @@ +" Author: carakan <carakan@gmail.com> +" Description: Fixing files with tslint. + +function! ale#fixers#tslint#Fix(buffer) abort + let l:executable = ale_linters#typescript#tslint#GetExecutable(a:buffer) + + let l:tslint_config_path = ale#path#ResolveLocalPath( + \ a:buffer, + \ 'tslint.json', + \ ale#Var(a:buffer, 'typescript_tslint_config_path') + \) + let l:tslint_config_option = !empty(l:tslint_config_path) + \ ? ' -c ' . ale#Escape(l:tslint_config_path) + \ : '' + + return { + \ 'command': ale#node#Executable(a:buffer, l:executable) + \ . l:tslint_config_option + \ . ' --fix %t', + \ 'read_temporary_file': 1, + \} +endfunction |