mirror of https://github.com/dense-analysis/ale
Check user systemd unit files with systemd-analyze
This commit is contained in:
parent
b45ee8ec6c
commit
f43e4abc88
|
@ -0,0 +1,25 @@
|
||||||
|
function! ale_linters#systemd#systemd_analyze#Handle(buffer, lines) abort
|
||||||
|
let l:re = '\v(.+):([0-9]+): (.+)'
|
||||||
|
let l:output = []
|
||||||
|
|
||||||
|
for l:match in ale#util#GetMatches(a:lines, l:re)
|
||||||
|
call add(l:output, {
|
||||||
|
\ 'lnum': str2nr(l:match[2]),
|
||||||
|
\ 'col': 1,
|
||||||
|
\ 'type': 'W',
|
||||||
|
\ 'text': l:match[3],
|
||||||
|
\})
|
||||||
|
endfor
|
||||||
|
|
||||||
|
return l:output
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
call ale#linter#Define('systemd', {
|
||||||
|
\ 'name': 'systemd_analyze',
|
||||||
|
\ 'aliases': ['systemd-analyze'],
|
||||||
|
\ 'executable': 'systemd-analyze',
|
||||||
|
\ 'command': 'SYSTEMD_LOG_COLOR=0 %e --user verify %s',
|
||||||
|
\ 'callback': 'ale_linters#systemd#systemd_analyze#Handle',
|
||||||
|
\ 'output_stream': 'both',
|
||||||
|
\ 'lint_file': 1,
|
||||||
|
\})
|
|
@ -167,7 +167,7 @@ Notes:
|
||||||
* Git Commit Messages
|
* Git Commit Messages
|
||||||
* `gitlint`
|
* `gitlint`
|
||||||
* GLSL
|
* GLSL
|
||||||
* glslang
|
* `glslang`
|
||||||
* `glslls`
|
* `glslls`
|
||||||
* Go
|
* Go
|
||||||
* `bingo`
|
* `bingo`
|
||||||
|
@ -492,6 +492,8 @@ Notes:
|
||||||
* `sourcekit-lsp`
|
* `sourcekit-lsp`
|
||||||
* `swiftformat`
|
* `swiftformat`
|
||||||
* `swiftlint`
|
* `swiftlint`
|
||||||
|
* systemd
|
||||||
|
* `systemd-analyze`!!
|
||||||
* Tcl
|
* Tcl
|
||||||
* `nagelfar`!!
|
* `nagelfar`!!
|
||||||
* Terraform
|
* Terraform
|
||||||
|
@ -562,3 +564,6 @@ Notes:
|
||||||
* `yang-lsp`
|
* `yang-lsp`
|
||||||
* Zig
|
* Zig
|
||||||
* `zls`
|
* `zls`
|
||||||
|
|
||||||
|
===============================================================================
|
||||||
|
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
===============================================================================
|
||||||
|
ALE systemd Integration *ale-systemd-options*
|
||||||
|
|
||||||
|
|
||||||
|
===============================================================================
|
||||||
|
systemd-analyze *ale-systemd-analyze*
|
||||||
|
|
||||||
|
ALE supports checking user systemd units with `systemd-analyze --user verify`
|
||||||
|
Checks will only work with user unit files in their proper location. There
|
||||||
|
aren't any options, and checks can only run after saving the file.
|
||||||
|
|
||||||
|
|
||||||
|
===============================================================================
|
||||||
|
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|
|
@ -3010,6 +3010,8 @@ documented in additional help files.
|
||||||
stylelint.............................|ale-sugarss-stylelint|
|
stylelint.............................|ale-sugarss-stylelint|
|
||||||
swift...................................|ale-swift-options|
|
swift...................................|ale-swift-options|
|
||||||
sourcekitlsp..........................|ale-swift-sourcekitlsp|
|
sourcekitlsp..........................|ale-swift-sourcekitlsp|
|
||||||
|
systemd.................................|ale-systemd-options|
|
||||||
|
systemd-analyze.......................|ale-systemd-analyze|
|
||||||
tcl.....................................|ale-tcl-options|
|
tcl.....................................|ale-tcl-options|
|
||||||
nagelfar..............................|ale-tcl-nagelfar|
|
nagelfar..............................|ale-tcl-nagelfar|
|
||||||
terraform...............................|ale-terraform-options|
|
terraform...............................|ale-terraform-options|
|
||||||
|
|
|
@ -501,6 +501,8 @@ formatting.
|
||||||
* [sourcekit-lsp](https://github.com/apple/sourcekit-lsp)
|
* [sourcekit-lsp](https://github.com/apple/sourcekit-lsp)
|
||||||
* [swiftformat](https://github.com/nicklockwood/SwiftFormat)
|
* [swiftformat](https://github.com/nicklockwood/SwiftFormat)
|
||||||
* [swiftlint](https://github.com/realm/SwiftLint)
|
* [swiftlint](https://github.com/realm/SwiftLint)
|
||||||
|
* systemd
|
||||||
|
* [systemd-analyze](https://www.freedesktop.org/software/systemd/man/systemd-analyze.html) :floppy_disk:
|
||||||
* Tcl
|
* Tcl
|
||||||
* [nagelfar](http://nagelfar.sourceforge.net) :floppy_disk:
|
* [nagelfar](http://nagelfar.sourceforge.net) :floppy_disk:
|
||||||
* Terraform
|
* Terraform
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
Before:
|
||||||
|
call ale#assert#SetUpLinterTest('systemd', 'systemd_analyze')
|
||||||
|
|
||||||
|
After:
|
||||||
|
call ale#assert#TearDownLinterTest()
|
||||||
|
|
||||||
|
Execute(The default command should be correct):
|
||||||
|
AssertLinter 'systemd-analyze',
|
||||||
|
\ 'SYSTEMD_LOG_COLOR=0 ' . ale#Escape('systemd-analyze') . ' --user verify %s'
|
|
@ -0,0 +1,19 @@
|
||||||
|
Before:
|
||||||
|
runtime ale_linters/systemd/systemd_analyze.vim
|
||||||
|
|
||||||
|
After:
|
||||||
|
call ale#linter#Reset()
|
||||||
|
|
||||||
|
Execute(The systemd-analyze handler should parse lines correctly):
|
||||||
|
AssertEqual
|
||||||
|
\ [
|
||||||
|
\ {
|
||||||
|
\ 'lnum': 9,
|
||||||
|
\ 'col': 1,
|
||||||
|
\ 'type': 'W',
|
||||||
|
\ 'text': 'Unknown key name ''Wat'' in section ''Service'', ignoring.',
|
||||||
|
\ },
|
||||||
|
\ ],
|
||||||
|
\ ale_linters#systemd#systemd_analyze#Handle(bufnr(''), [
|
||||||
|
\ '/home/user/.config/systemd/user/foo.service:9: Unknown key name ''Wat'' in section ''Service'', ignoring.',
|
||||||
|
\ ])
|
Loading…
Reference in New Issue