mirror of
https://github.com/amix/vimrc
synced 2025-06-30 20:05:01 +08:00
Updated plugins
This commit is contained in:
@ -32,14 +32,29 @@ function! ale_linters#dockerfile#dockerfile_lint#Handle(buffer, lines) abort
|
||||
let l:line = get(l:object, 'line', -1)
|
||||
let l:message = l:object['message']
|
||||
|
||||
if get(l:object, 'description', 'None') isnot# 'None'
|
||||
let l:message = l:message . '. ' . l:object['description']
|
||||
let l:link = get(l:object, 'reference_url', '')
|
||||
|
||||
if type(l:link) == v:t_list
|
||||
" Somehow, reference_url is returned as two-part list.
|
||||
" Anchor markers in that list are sometimes duplicated.
|
||||
" See https://github.com/projectatomic/dockerfile_lint/issues/134
|
||||
let l:link = join(l:link, '')
|
||||
let l:link = substitute(l:link, '##', '#', '')
|
||||
endif
|
||||
|
||||
let l:detail = l:message
|
||||
|
||||
if get(l:object, 'description', 'None') isnot# 'None'
|
||||
let l:detail .= "\n\n" . l:object['description']
|
||||
endif
|
||||
|
||||
let l:detail .= "\n\n" . l:link
|
||||
|
||||
call add(l:messages, {
|
||||
\ 'lnum': l:line,
|
||||
\ 'text': l:message,
|
||||
\ 'type': ale_linters#dockerfile#dockerfile_lint#GetType(l:type),
|
||||
\ 'detail': l:detail,
|
||||
\})
|
||||
endfor
|
||||
endfor
|
||||
|
21
sources_non_forked/ale/ale_linters/go/revive.vim
Normal file
21
sources_non_forked/ale/ale_linters/go/revive.vim
Normal file
@ -0,0 +1,21 @@
|
||||
" Author: Penghui Liao <liaoishere@gmail.com>
|
||||
" Description: Adds support for revive
|
||||
|
||||
call ale#Set('go_revive_executable', 'revive')
|
||||
call ale#Set('go_revive_options', '')
|
||||
|
||||
function! ale_linters#go#revive#GetCommand(buffer) abort
|
||||
let l:options = ale#Var(a:buffer, 'go_revive_options')
|
||||
|
||||
return ale#go#EnvString(a:buffer) . '%e'
|
||||
\ . (!empty(l:options) ? ' ' . l:options : '')
|
||||
\ . ' %t'
|
||||
endfunction
|
||||
|
||||
call ale#linter#Define('go', {
|
||||
\ 'name': 'revive',
|
||||
\ 'output_stream': 'both',
|
||||
\ 'executable': {b -> ale#Var(b, 'go_revive_executable')},
|
||||
\ 'command': function('ale_linters#go#revive#GetCommand'),
|
||||
\ 'callback': 'ale#handlers#unix#HandleAsWarning',
|
||||
\})
|
@ -7,6 +7,7 @@ call ale#Set('java_eclipselsp_path', ale#path#Simplify($HOME . '/eclipse.jdt.ls'
|
||||
call ale#Set('java_eclipselsp_config_path', '')
|
||||
call ale#Set('java_eclipselsp_workspace_path', '')
|
||||
call ale#Set('java_eclipselsp_executable', 'java')
|
||||
call ale#Set('java_eclipselsp_javaagent', '')
|
||||
|
||||
function! ale_linters#java#eclipselsp#Executable(buffer) abort
|
||||
return ale#Var(a:buffer, 'java_eclipselsp_executable')
|
||||
@ -100,12 +101,30 @@ function! ale_linters#java#eclipselsp#WorkspacePath(buffer) abort
|
||||
return ale#path#Dirname(ale#java#FindProjectRoot(a:buffer))
|
||||
endfunction
|
||||
|
||||
function! ale_linters#java#eclipselsp#Javaagent(buffer) abort
|
||||
let l:rets = []
|
||||
let l:raw = ale#Var(a:buffer, 'java_eclipselsp_javaagent')
|
||||
|
||||
if empty(l:raw)
|
||||
return ''
|
||||
endif
|
||||
|
||||
let l:jars = split(l:raw)
|
||||
|
||||
for l:jar in l:jars
|
||||
call add(l:rets, ale#Escape('-javaagent:' . l:jar))
|
||||
endfor
|
||||
|
||||
return join(l:rets, ' ')
|
||||
endfunction
|
||||
|
||||
function! ale_linters#java#eclipselsp#Command(buffer, version) abort
|
||||
let l:path = ale#Var(a:buffer, 'java_eclipselsp_path')
|
||||
|
||||
let l:executable = ale_linters#java#eclipselsp#Executable(a:buffer)
|
||||
|
||||
let l:cmd = [ ale#Escape(l:executable),
|
||||
\ ale_linters#java#eclipselsp#Javaagent(a:buffer),
|
||||
\ '-Declipse.application=org.eclipse.jdt.ls.core.id1',
|
||||
\ '-Dosgi.bundles.defaultStartLevel=4',
|
||||
\ '-Declipse.product=org.eclipse.jdt.ls.core.product',
|
||||
|
@ -6,6 +6,7 @@ let s:classpath_sep = has('unix') ? ':' : ';'
|
||||
call ale#Set('java_javac_executable', 'javac')
|
||||
call ale#Set('java_javac_options', '')
|
||||
call ale#Set('java_javac_classpath', '')
|
||||
call ale#Set('java_javac_sourcepath', '')
|
||||
|
||||
function! ale_linters#java#javac#RunWithImportPaths(buffer) abort
|
||||
let l:command = ''
|
||||
@ -40,10 +41,15 @@ endfunction
|
||||
function! s:BuildClassPathOption(buffer, import_paths) abort
|
||||
" Filter out lines like [INFO], etc.
|
||||
let l:class_paths = filter(a:import_paths[:], 'v:val !~# ''[''')
|
||||
call extend(
|
||||
\ l:class_paths,
|
||||
\ split(ale#Var(a:buffer, 'java_javac_classpath'), s:classpath_sep),
|
||||
\)
|
||||
let l:cls_path = ale#Var(a:buffer, 'java_javac_classpath')
|
||||
|
||||
if !empty(l:cls_path) && type(l:cls_path) is v:t_string
|
||||
call extend(l:class_paths, split(l:cls_path, s:classpath_sep))
|
||||
endif
|
||||
|
||||
if !empty(l:cls_path) && type(l:cls_path) is v:t_list
|
||||
call extend(l:class_paths, l:cls_path)
|
||||
endif
|
||||
|
||||
return !empty(l:class_paths)
|
||||
\ ? '-cp ' . ale#Escape(join(l:class_paths, s:classpath_sep))
|
||||
@ -79,6 +85,27 @@ function! ale_linters#java#javac#GetCommand(buffer, import_paths, meta) abort
|
||||
endif
|
||||
endif
|
||||
|
||||
let l:source_paths = []
|
||||
let l:source_path = ale#Var(a:buffer, 'java_javac_sourcepath')
|
||||
|
||||
if !empty(l:source_path) && type(l:source_path) is v:t_string
|
||||
let l:source_paths = split(l:source_path, s:classpath_sep)
|
||||
endif
|
||||
|
||||
if !empty(l:source_path) && type(l:source_path) is v:t_list
|
||||
let l:source_paths = l:source_path
|
||||
endif
|
||||
|
||||
if !empty(l:source_paths)
|
||||
for l:path in l:source_paths
|
||||
let l:sp_path = ale#path#FindNearestDirectory(a:buffer, l:path)
|
||||
|
||||
if !empty(l:sp_path)
|
||||
call add(l:sp_dirs, l:sp_path)
|
||||
endif
|
||||
endfor
|
||||
endif
|
||||
|
||||
if !empty(l:sp_dirs)
|
||||
let l:sp_option = '-sourcepath '
|
||||
\ . ale#Escape(join(l:sp_dirs, s:classpath_sep))
|
||||
|
@ -163,7 +163,7 @@ function! ale#Queue(delay, ...) abort
|
||||
endif
|
||||
endfunction
|
||||
|
||||
let s:current_ale_version = [2, 6, 0]
|
||||
let s:current_ale_version = [2, 7, 0]
|
||||
|
||||
" A function used to check for ALE features in files outside of the project.
|
||||
function! ale#Has(feature) abort
|
||||
|
@ -7,8 +7,40 @@ cfn-python-lint *ale-cloudformation-cfn-python-lint*
|
||||
|
||||
cfn-python-lint is a linter for AWS CloudFormation template file.
|
||||
|
||||
https://github.com/awslabs/cfn-python-lint
|
||||
Website: https://github.com/awslabs/cfn-python-lint
|
||||
|
||||
Installation
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
|
||||
Install cfn-python-lint using either pip or brew: >
|
||||
|
||||
`pip install cfn-lint`. If pip is not available, run
|
||||
`python setup.py clean --all` then `python setup.py install`.
|
||||
|
||||
Homebrew (macOS):
|
||||
|
||||
`brew install cfn-lint`
|
||||
|
||||
<
|
||||
Configuration
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
To get cloudformation linter to work on only CloudFormation files we must set
|
||||
the buffer |filetype| to yaml.cloudformation.
|
||||
This causes ALE to lint the file with linters configured for cloudformation and
|
||||
yaml files.
|
||||
|
||||
Just put:
|
||||
|
||||
>
|
||||
|
||||
au BufRead,BufNewFile *.template.yaml set filetype=yaml.cloudformation
|
||||
|
||||
<
|
||||
|
||||
on `ftdetect/cloudformation.vim`
|
||||
|
||||
This will get both cloudformation and yaml linters to work on any file with `.template.yaml` ext.
|
||||
===============================================================================
|
||||
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|
||||
|
||||
|
@ -219,6 +219,25 @@ g:ale_go_govet_options *g:ale_go_govet_options*
|
||||
This variable can be set to pass additional options to the go vet linter.
|
||||
|
||||
|
||||
===============================================================================
|
||||
revive *ale-go-revive*
|
||||
|
||||
g:ale_go_revive_executable *g:ale_go_revive_executable*
|
||||
*b:ale_go_revive_executable*
|
||||
Type: |String|
|
||||
Default: `'revive'`
|
||||
|
||||
This variable can be set to change the revive executable path.
|
||||
|
||||
|
||||
g:ale_go_revive_options *g:ale_go_revive_options*
|
||||
*b:ale_go_revive_options*
|
||||
Type: |String|
|
||||
Default: `''`
|
||||
|
||||
This variable can be set to pass additional options to the revive
|
||||
|
||||
|
||||
===============================================================================
|
||||
staticcheck *ale-go-staticcheck*
|
||||
|
||||
|
@ -46,7 +46,7 @@ javac *ale-java-javac*
|
||||
|
||||
g:ale_java_javac_classpath *g:ale_java_javac_classpath*
|
||||
*b:ale_java_javac_classpath*
|
||||
Type: |String|
|
||||
Type: |String| or |List|
|
||||
Default: `''`
|
||||
|
||||
This variable can be set to change the global classpath for Java.
|
||||
@ -67,6 +67,30 @@ g:ale_java_javac_options *g:ale_java_javac_options*
|
||||
|
||||
This variable can be set to pass additional options to javac.
|
||||
|
||||
g:ale_java_javac_sourcepath *g:ale_java_javac_sourcepath*
|
||||
*b:ale_java_javac_sourcepath*
|
||||
Type: |String| or |List|
|
||||
Default: `''`
|
||||
|
||||
This variable can set multiple source code paths, the source code path is a
|
||||
relative path (relative to the project root directory).
|
||||
|
||||
Example:
|
||||
|
||||
String type:
|
||||
Note that the unix system separator is a colon(`:`) window system
|
||||
is a semicolon(`;`).
|
||||
>
|
||||
let g:ale_java_javac_sourcepath = 'build/gen/source/xx/main:build/gen/source'
|
||||
<
|
||||
List type:
|
||||
>
|
||||
let g:ale_java_javac_sourcepath = [
|
||||
\ 'build/generated/source/querydsl/main',
|
||||
\ 'target/generated-sources/source/querydsl/main'
|
||||
\ ]
|
||||
<
|
||||
|
||||
|
||||
===============================================================================
|
||||
google-java-format *ale-java-google-java-format*
|
||||
@ -222,6 +246,17 @@ g:ale_java_eclipselsp_workspace_path *g:ale_java_eclipselsp_workspace_path*
|
||||
absolute path of the Eclipse workspace. If not set this value will be set to
|
||||
the parent folder of the project root.
|
||||
|
||||
g:ale_java_eclipselsp_javaagent *g:ale_java_eclipselsp_javaagent*
|
||||
*b:ale_java_eclipselsp_javaagent*
|
||||
|
||||
Type: |String|
|
||||
Default: `''`
|
||||
|
||||
A variable to add java agent for annotation processing such as Lombok.
|
||||
If you have multiple java agent files, use space to separate them. For example:
|
||||
>
|
||||
let g:ale_java_eclipselsp_javaagent='/eclipse/lombok.jar /eclipse/jacoco.jar'
|
||||
<
|
||||
|
||||
===============================================================================
|
||||
uncrustify *ale-java-uncrustify*
|
||||
|
@ -164,6 +164,7 @@ Notes:
|
||||
* `gosimple`!!
|
||||
* `gotype`!!
|
||||
* `go vet`!!
|
||||
* `revive`!!
|
||||
* `staticcheck`!!
|
||||
* GraphQL
|
||||
* `eslint`
|
||||
|
@ -2379,6 +2379,7 @@ documented in additional help files.
|
||||
gometalinter..........................|ale-go-gometalinter|
|
||||
gopls.................................|ale-go-gopls|
|
||||
govet.................................|ale-go-govet|
|
||||
revive................................|ale-go-revive|
|
||||
staticcheck...........................|ale-go-staticcheck|
|
||||
graphql.................................|ale-graphql-options|
|
||||
eslint................................|ale-graphql-eslint|
|
||||
|
@ -173,6 +173,7 @@ formatting.
|
||||
* [gosimple](https://github.com/dominikh/go-tools/tree/master/cmd/gosimple) :warning: :floppy_disk:
|
||||
* [gotype](https://godoc.org/golang.org/x/tools/cmd/gotype) :warning: :floppy_disk:
|
||||
* [go vet](https://golang.org/cmd/vet/) :floppy_disk:
|
||||
* [revive](https://github.com/mgechev/revive) :warning: :floppy_disk:
|
||||
* [staticcheck](https://github.com/dominikh/go-tools/tree/master/cmd/staticcheck) :warning: :floppy_disk:
|
||||
* GraphQL
|
||||
* [eslint](http://eslint.org/)
|
||||
|
Reference in New Issue
Block a user