Add support for qmlfmt fixer (#1651)

* Add support for qmlfmt fixer
This commit is contained in:
P M 2018-06-12 20:38:16 +02:00 committed by w0rp
parent 5283faa511
commit f1b72218c3
3 changed files with 28 additions and 0 deletions

View file

@ -200,6 +200,11 @@ let s:default_registry = {
\ 'suggested_filetypes': ['javascript'],
\ 'description': 'Fix JavaScript files using xo --fix.',
\ },
\ 'qmlfmt': {
\ 'function': 'ale#fixers#qmlfmt#Fix',
\ 'suggested_filetypes': ['qml'],
\ 'description': 'Fix QML files with qmlfmt.',
\ },
\}
" Reset the function registry to the default entries.

View file

@ -0,0 +1,11 @@
call ale#Set('qml_qmlfmt_executable', 'qmlfmt')
function! ale#fixers#qmlfmt#GetExecutable(buffer) abort
return ale#Var(a:buffer, 'qml_qmlfmt_executable')
endfunction
function! ale#fixers#qmlfmt#Fix(buffer) abort
return {
\ 'command': ale#Escape(ale#fixers#qmlfmt#GetExecutable(a:buffer)),
\}
endfunction

View file

@ -0,0 +1,12 @@
Before:
Save g:ale_qml_qmlfmt_executable
After:
Restore
Execute(The qmlfmt fixer should use the options you set):
let g:ale_qml_qmlfmt_executable = 'foo-exe'
AssertEqual
\ {'command': ale#Escape('foo-exe')},
\ ale#fixers#qmlfmt#Fix(bufnr(''))