summaryrefslogtreecommitdiff
path: root/ale_linters
diff options
context:
space:
mode:
authorw0rp <w0rp@users.noreply.github.com>2016-10-21 09:21:50 +0100
committerGitHub <noreply@github.com>2016-10-21 09:21:50 +0100
commit5eee70cf3771d8c07686766fa6625c9ac045af39 (patch)
treed11f276c518ea67c1baca91fd8312873ee6710f5 /ale_linters
parent7a06d276c255827df5c7c397e4871e5e887dcb39 (diff)
parentc697ef05bb3a084588fb6033c2bf915932917afc (diff)
downloadale-5eee70cf3771d8c07686766fa6625c9ac045af39.zip
Merge pull request #129 from neersighted/ansible
Add ansible-lint support and factor out PEP8 handler
Diffstat (limited to 'ale_linters')
-rw-r--r--ale_linters/ansible/ansible-lint.vim15
-rw-r--r--ale_linters/python/flake8.vim42
2 files changed, 16 insertions, 41 deletions
diff --git a/ale_linters/ansible/ansible-lint.vim b/ale_linters/ansible/ansible-lint.vim
new file mode 100644
index 00000000..a947d9e7
--- /dev/null
+++ b/ale_linters/ansible/ansible-lint.vim
@@ -0,0 +1,15 @@
+" Author: Bjorn Neergaard <bjorn@neersighted.com>
+" Description: ansible-lint for ansible-yaml files
+
+if exists('g:loaded_ale_linters_ansible_ansiblelint')
+ finish
+endif
+
+let g:loaded_ale_linters_ansible_ansiblelint = 1
+
+call ale#linter#Define('ansible', {
+\ 'name': 'ansible',
+\ 'executable': 'ansible',
+\ 'command': g:ale#util#stdin_wrapper . ' .yml ansible-lint -p',
+\ 'callback': 'ale#handlers#HandlePEP8Format',
+\})
diff --git a/ale_linters/python/flake8.vim b/ale_linters/python/flake8.vim
index cc4c604f..bf7c1a16 100644
--- a/ale_linters/python/flake8.vim
+++ b/ale_linters/python/flake8.vim
@@ -7,49 +7,9 @@ endif
let g:loaded_ale_linters_python_flake8 = 1
-function! ale_linters#python#flake8#Handle(buffer, lines)
- " Matches patterns line the following:
- "
- " stdin:6:6: E111 indentation is not a multiple of four
- let l:pattern = '^stdin:\(\d\+\):\(\d\+\): \([^ ]\+\) \(.\+\)$'
- let l:output = []
-
- for l:line in a:lines
- let l:match = matchlist(l:line, l:pattern)
-
- if len(l:match) == 0
- continue
- endif
-
- let l:line = l:match[1] + 0
- let l:column = l:match[2] + 0
- let l:code = l:match[3]
- let l:text = l:code . ': ' . l:match[4]
- let l:type = l:code[0] ==# 'E' ? 'E' : 'W'
-
- if (l:code ==# 'W291' || l:code ==# 'W293') && !g:ale_warn_about_trailing_whitespace
- " Skip warnings for trailing whitespace if the option is off.
- continue
- endif
-
- " vcol is Needed to indicate that the column is a character.
- call add(l:output, {
- \ 'bufnr': a:buffer,
- \ 'lnum': l:line,
- \ 'vcol': 0,
- \ 'col': l:column,
- \ 'text': l:text,
- \ 'type': l:type,
- \ 'nr': -1,
- \})
- endfor
-
- return l:output
-endfunction
-
call ale#linter#Define('python', {
\ 'name': 'flake8',
\ 'executable': 'flake8',
\ 'command': 'flake8 -',
-\ 'callback': 'ale_linters#python#flake8#Handle',
+\ 'callback': 'ale#handlers#HandlePEP8Format',
\})