refactor: finish moving ssh-* scripts to own installers
[webi-installers/.git] / vim-ale / ale.vim
1 " turn on the syntax checker
2 syntax on
3
4 " don't check immediately on open (or quit)
5 let g:ale_lint_on_enter = 0
6 " check on save
7 let g:ale_lint_on_save = 1
8
9 " these emojis go in the sidebar for errors and warnings
10 " other considerations: '💥' '☠' '●' '.'
11 let g:ale_sign_error = '☢️'
12 let g:ale_sign_warning = '⚡'
13
14 " show error count
15 function! LinterStatus() abort
16     let l:counts = ale#statusline#Count(bufnr(''))
17     let l:all_errors = l:counts.error + l:counts.style_error
18     let l:all_non_errors = l:counts.total - l:all_errors
19     return l:counts.total == 0 ? 'OK' : printf(
20         \   '%d⨉ %d⚠ ',
21         \   all_non_errors,
22         \   all_errors
23         \)
24 endfunction
25 set statusline+=%=
26 set statusline+=\ %{LinterStatus()}
27
28 " how to show error message
29 let g:ale_echo_msg_error_str = 'E'
30 let g:ale_echo_msg_warning_str = 'W'
31 let g:ale_echo_msg_format = '[%linter%] %s [%severity%]'