adds fixer support for hfmt (#1027)

Add support for fixing Haskell with hfmt
This commit is contained in:
Zack Kourouma 2017-10-24 14:29:04 -07:00 committed by w0rp
parent b172cd8b17
commit 07dad64acb
6 changed files with 58 additions and 2 deletions

View file

@ -117,6 +117,11 @@ let s:default_registry = {
\ 'suggested_filetypes': ['rust'],
\ 'description': 'Fix Rust files with Rustfmt.',
\ },
\ 'hfmt': {
\ 'function': 'ale#fixers#hfmt#Fix',
\ 'suggested_filetypes': ['haskell'],
\ 'description': 'Fix Haskell files with hfmt.',
\ },
\}
" Reset the function registry to the default entries.

View file

@ -0,0 +1,16 @@
" Author: zack <zack@kourouma.me>
" Description: Integration of hfmt with ALE.
call ale#Set('haskell_hfmt_executable', 'hfmt')
function! ale#fixers#hfmt#Fix(buffer) abort
let l:executable = ale#Var(a:buffer, 'haskell_hfmt_executable')
return {
\ 'command': ale#Escape(l:executable)
\ . ' -w'
\ . ' %t',
\ 'read_temporary_file': 1,
\}
endfunction