Some checks failed
		
		
	
	Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
				
			Detach Plugins / check (GitHub.vim) (push) Has been cancelled
				
			Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
				
			Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
				
			Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
				
			Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
				
			Detach Plugins / check (git.vim) (push) Has been cancelled
				
			Detach Plugins / check (iedit.vim) (push) Has been cancelled
				
			Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
				
			Detach Plugins / check (vim-chat) (push) Has been cancelled
				
			Detach Plugins / check (vim-cheat) (push) Has been cancelled
				
			Detach Plugins / check (vim-todo) (push) Has been cancelled
				
			Detach Plugins / check (xmake.vim) (push) Has been cancelled
				
			test / Linux (nvim, nightly) (push) Has been cancelled
				
			test / Linux (nvim, v0.3.8) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.3) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.4) (push) Has been cancelled
				
			test / Linux (nvim, v0.5.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.5.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.6.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.6.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.7.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.7.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.3) (push) Has been cancelled
				
			test / Linux (nvim, v0.9.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.9.1) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.052) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.629) (push) Has been cancelled
				
			test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
				
			test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
				
			test / Linux (vim, nightly) (push) Has been cancelled
				
			test / Linux (vim, v8.0.0184) (push) Has been cancelled
				
			test / Linux (vim, v8.0.1453) (push) Has been cancelled
				
			test / Linux (vim, v8.1.2269) (push) Has been cancelled
				
			test / Linux (vim, v8.2.2434) (push) Has been cancelled
				
			test / Linux (vim, v8.2.3995) (push) Has been cancelled
				
			test / Windows (nvim, nightly) (push) Has been cancelled
				
			test / Windows (nvim, v0.3.8) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.3) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.4) (push) Has been cancelled
				
			test / Windows (nvim, v0.5.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.5.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.6.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.6.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.7.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.7.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.3) (push) Has been cancelled
				
			test / Windows (nvim, v0.9.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.9.1) (push) Has been cancelled
				
			test / Windows (vim, nightly) (push) Has been cancelled
				
			test / Windows (vim, v7.4.1185) (push) Has been cancelled
				
			test / Windows (vim, v7.4.1689) (push) Has been cancelled
				
			test / Windows (vim, v8.0.0027) (push) Has been cancelled
				
			test / Windows (vim, v8.0.1453) (push) Has been cancelled
				
			test / Windows (vim, v8.1.2269) (push) Has been cancelled
				
			test / Windows (vim, v8.2.2434) (push) Has been cancelled
				
			test / Windows (vim, v8.2.3995) (push) Has been cancelled
				
			docker / docker (push) Has been cancelled
				
			mirror / check (coding) (push) Has been cancelled
				
			mirror / check (gitee) (push) Has been cancelled
				
			mirror / check (gitlab) (push) Has been cancelled
				
			
		
			
				
	
	
		
			70 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
" Author: Eddie Lebow https://github.com/elebow
 | 
						|
" Description: Reek, a code smell detector for Ruby files
 | 
						|
 | 
						|
call ale#Set('ruby_reek_show_context', 0)
 | 
						|
call ale#Set('ruby_reek_show_wiki_link', 0)
 | 
						|
call ale#Set('ruby_reek_options', '')
 | 
						|
call ale#Set('ruby_reek_executable', 'reek')
 | 
						|
 | 
						|
function! ale_linters#ruby#reek#GetCommand(buffer, version) abort
 | 
						|
    let l:executable = ale#Var(a:buffer, 'ruby_reek_executable')
 | 
						|
 | 
						|
    " Tell reek what the filename is if the version of reek is new enough.
 | 
						|
    let l:display_name_args = ale#semver#GTE(a:version, [5, 0, 0])
 | 
						|
    \   ? ' --stdin-filename %s'
 | 
						|
    \   : ''
 | 
						|
 | 
						|
    return ale#ruby#EscapeExecutable(l:executable, 'reek')
 | 
						|
    \   . ' -f json --no-progress --no-color --force-exclusion'
 | 
						|
    \   . l:display_name_args
 | 
						|
endfunction
 | 
						|
 | 
						|
function! s:GetDocumentationLink(error) abort
 | 
						|
    return get(a:error, 'documentation_link', get(a:error, 'wiki_link', ''))
 | 
						|
endfunction
 | 
						|
 | 
						|
function! s:BuildText(buffer, error) abort
 | 
						|
    let l:parts = []
 | 
						|
 | 
						|
    if ale#Var(a:buffer, 'ruby_reek_show_context')
 | 
						|
        call add(l:parts, a:error.context)
 | 
						|
    endif
 | 
						|
 | 
						|
    call add(l:parts, a:error.message)
 | 
						|
 | 
						|
    if ale#Var(a:buffer, 'ruby_reek_show_wiki_link')
 | 
						|
        call add(l:parts, '[' . s:GetDocumentationLink(a:error) . ']')
 | 
						|
    endif
 | 
						|
 | 
						|
    return join(l:parts, ' ')
 | 
						|
endfunction
 | 
						|
 | 
						|
function! ale_linters#ruby#reek#Handle(buffer, lines) abort
 | 
						|
    let l:output = []
 | 
						|
 | 
						|
    for l:error in ale#util#FuzzyJSONDecode(a:lines, [])
 | 
						|
        for l:location in l:error.lines
 | 
						|
            call add(l:output, {
 | 
						|
            \    'lnum': l:location,
 | 
						|
            \    'type': 'W',
 | 
						|
            \    'text': s:BuildText(a:buffer, l:error),
 | 
						|
            \    'code': l:error.smell_type,
 | 
						|
            \})
 | 
						|
        endfor
 | 
						|
    endfor
 | 
						|
 | 
						|
    return l:output
 | 
						|
endfunction
 | 
						|
 | 
						|
call ale#linter#Define('ruby', {
 | 
						|
\   'name': 'reek',
 | 
						|
\   'executable': {b -> ale#Var(b, 'ruby_reek_executable')},
 | 
						|
\   'command': {buffer -> ale#semver#RunWithVersionCheck(
 | 
						|
\       buffer,
 | 
						|
\       ale#Var(buffer, 'ruby_reek_executable'),
 | 
						|
\       '%e --version',
 | 
						|
\       function('ale_linters#ruby#reek#GetCommand'),
 | 
						|
\   )},
 | 
						|
\    'callback': 'ale_linters#ruby#reek#Handle',
 | 
						|
\})
 |