Updated plugins
This commit is contained in:
parent
9999d72176
commit
2dc46c9a65
92 changed files with 412 additions and 245 deletions
|
@ -11,7 +11,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('css', {
|
call ale#linter#Define('css', {
|
||||||
\ 'name': 'stylelint',
|
\ 'name': 'stylelint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'css_stylelint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'css_stylelint', [
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#css#stylelint#GetCommand'),
|
\ 'command': function('ale_linters#css#stylelint#GetCommand'),
|
||||||
|
|
|
@ -28,7 +28,7 @@ endfunction
|
||||||
call ale#linter#Define('elm', {
|
call ale#linter#Define('elm', {
|
||||||
\ 'name': 'elm_ls',
|
\ 'name': 'elm_ls',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'elm_ls', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'elm_ls', [
|
||||||
\ 'node_modules/.bin/elm-language-server',
|
\ 'node_modules/.bin/elm-language-server',
|
||||||
\ 'node_modules/.bin/elm-lsp',
|
\ 'node_modules/.bin/elm-lsp',
|
||||||
\ 'elm-lsp'
|
\ 'elm-lsp'
|
||||||
|
|
|
@ -202,7 +202,7 @@ function! ale_linters#elm#make#GetCommand(buffer) abort
|
||||||
" elm-test needs to know the path of elm-make if elm isn't installed globally.
|
" elm-test needs to know the path of elm-make if elm isn't installed globally.
|
||||||
" https://github.com/rtfeldman/node-test-runner/blob/57728f10668f2d2ab3179e7e3208bcfa9a1f19aa/README.md#--compiler
|
" https://github.com/rtfeldman/node-test-runner/blob/57728f10668f2d2ab3179e7e3208bcfa9a1f19aa/README.md#--compiler
|
||||||
if l:is_v19 && l:is_using_elm_test
|
if l:is_v19 && l:is_using_elm_test
|
||||||
let l:elm_make_executable = ale#node#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
|
let l:elm_make_executable = ale#path#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
|
||||||
let l:elm_test_compiler_flag = ' --compiler ' . l:elm_make_executable . ' '
|
let l:elm_test_compiler_flag = ' --compiler ' . l:elm_make_executable . ' '
|
||||||
else
|
else
|
||||||
let l:elm_test_compiler_flag = ' '
|
let l:elm_test_compiler_flag = ' '
|
||||||
|
@ -222,13 +222,13 @@ function! ale_linters#elm#make#GetExecutable(buffer) abort
|
||||||
let l:is_v19 = ale_linters#elm#make#IsVersionGte19(a:buffer)
|
let l:is_v19 = ale_linters#elm#make#IsVersionGte19(a:buffer)
|
||||||
|
|
||||||
if l:is_test && l:is_v19
|
if l:is_test && l:is_v19
|
||||||
return ale#node#FindExecutable(
|
return ale#path#FindExecutable(
|
||||||
\ a:buffer,
|
\ a:buffer,
|
||||||
\ 'elm_make',
|
\ 'elm_make',
|
||||||
\ ['node_modules/.bin/elm-test', 'node_modules/.bin/elm']
|
\ ['node_modules/.bin/elm-test', 'node_modules/.bin/elm']
|
||||||
\)
|
\)
|
||||||
else
|
else
|
||||||
return ale#node#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
|
return ale#path#FindExecutable(a:buffer, 'elm_make', ['node_modules/.bin/elm'])
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
call ale#Set('go_gopls_executable', 'gopls')
|
call ale#Set('go_gopls_executable', 'gopls')
|
||||||
call ale#Set('go_gopls_options', '--mode stdio')
|
call ale#Set('go_gopls_options', '--mode stdio')
|
||||||
call ale#Set('go_gopls_init_options', {})
|
call ale#Set('go_gopls_init_options', {})
|
||||||
|
call ale#Set('go_gopls_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#go#gopls#GetCommand(buffer) abort
|
function! ale_linters#go#gopls#GetCommand(buffer) abort
|
||||||
return ale#go#EnvString(a:buffer)
|
return ale#go#EnvString(a:buffer)
|
||||||
|
@ -29,7 +30,9 @@ endfunction
|
||||||
call ale#linter#Define('go', {
|
call ale#linter#Define('go', {
|
||||||
\ 'name': 'gopls',
|
\ 'name': 'gopls',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'executable': {b -> ale#Var(b, 'go_gopls_executable')},
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'go_gopls', [
|
||||||
|
\ ale#go#GetGoPathExecutable('bin/gopls'),
|
||||||
|
\ ])},
|
||||||
\ 'command': function('ale_linters#go#gopls#GetCommand'),
|
\ 'command': function('ale_linters#go#gopls#GetCommand'),
|
||||||
\ 'project_root': function('ale_linters#go#gopls#FindProjectRoot'),
|
\ 'project_root': function('ale_linters#go#gopls#FindProjectRoot'),
|
||||||
\ 'initialization_options': {b -> ale#Var(b, 'go_gopls_init_options')},
|
\ 'initialization_options': {b -> ale#Var(b, 'go_gopls_init_options')},
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
" Author: Ben Reedy <https://github.com/breed808>
|
" Author: Ben Reedy <https://github.com/breed808>
|
||||||
" Description: staticcheck for Go files
|
" Description: staticcheck for Go files
|
||||||
|
|
||||||
|
call ale#Set('go_staticcheck_executable', 'staticcheck')
|
||||||
call ale#Set('go_staticcheck_options', '')
|
call ale#Set('go_staticcheck_options', '')
|
||||||
call ale#Set('go_staticcheck_lint_package', 0)
|
call ale#Set('go_staticcheck_lint_package', 0)
|
||||||
|
call ale#Set('go_staticcheck_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#go#staticcheck#GetCommand(buffer) abort
|
function! ale_linters#go#staticcheck#GetCommand(buffer) abort
|
||||||
let l:options = ale#Var(a:buffer, 'go_staticcheck_options')
|
let l:options = ale#Var(a:buffer, 'go_staticcheck_options')
|
||||||
|
@ -10,18 +12,20 @@ function! ale_linters#go#staticcheck#GetCommand(buffer) abort
|
||||||
let l:env = ale#go#EnvString(a:buffer)
|
let l:env = ale#go#EnvString(a:buffer)
|
||||||
|
|
||||||
if l:lint_package
|
if l:lint_package
|
||||||
return l:env . 'staticcheck'
|
return l:env . '%e'
|
||||||
\ . (!empty(l:options) ? ' ' . l:options : '') . ' .'
|
\ . (!empty(l:options) ? ' ' . l:options : '') . ' .'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
return l:env . 'staticcheck'
|
return l:env . '%e'
|
||||||
\ . (!empty(l:options) ? ' ' . l:options : '')
|
\ . (!empty(l:options) ? ' ' . l:options : '')
|
||||||
\ . ' %s:t'
|
\ . ' %s:t'
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
call ale#linter#Define('go', {
|
call ale#linter#Define('go', {
|
||||||
\ 'name': 'staticcheck',
|
\ 'name': 'staticcheck',
|
||||||
\ 'executable': 'staticcheck',
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'go_staticcheck', [
|
||||||
|
\ ale#go#GetGoPathExecutable('bin/staticcheck'),
|
||||||
|
\ ])},
|
||||||
\ 'cwd': '%s:h',
|
\ 'cwd': '%s:h',
|
||||||
\ 'command': function('ale_linters#go#staticcheck#GetCommand'),
|
\ 'command': function('ale_linters#go#staticcheck#GetCommand'),
|
||||||
\ 'callback': 'ale#handlers#go#Handler',
|
\ 'callback': 'ale#handlers#go#Handler',
|
||||||
|
|
|
@ -5,7 +5,7 @@ call ale#Set('handlebars_embertemplatelint_executable', 'ember-template-lint')
|
||||||
call ale#Set('handlebars_embertemplatelint_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('handlebars_embertemplatelint_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#handlebars#embertemplatelint#GetExecutable(buffer) abort
|
function! ale_linters#handlebars#embertemplatelint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'handlebars_embertemplatelint', [
|
return ale#path#FindExecutable(a:buffer, 'handlebars_embertemplatelint', [
|
||||||
\ 'node_modules/.bin/ember-template-lint',
|
\ 'node_modules/.bin/ember-template-lint',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -11,7 +11,7 @@ function! ale_linters#html#angular#GetProjectRoot(buffer) abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale_linters#html#angular#GetExecutable(buffer) abort
|
function! ale_linters#html#angular#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'html_angular', [
|
return ale#path#FindExecutable(a:buffer, 'html_angular', [
|
||||||
\ 'node_modules/@angular/language-server/bin/ngserver',
|
\ 'node_modules/@angular/language-server/bin/ngserver',
|
||||||
\ 'node_modules/@angular/language-server/index.js',
|
\ 'node_modules/@angular/language-server/index.js',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -24,7 +24,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('html', {
|
call ale#linter#Define('html', {
|
||||||
\ 'name': 'htmlhint',
|
\ 'name': 'htmlhint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'html_htmlhint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'html_htmlhint', [
|
||||||
\ 'node_modules/.bin/htmlhint',
|
\ 'node_modules/.bin/htmlhint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#html#htmlhint#GetCommand'),
|
\ 'command': function('ale_linters#html#htmlhint#GetCommand'),
|
||||||
|
|
|
@ -5,7 +5,7 @@ call ale#Set('html_stylelint_options', '')
|
||||||
call ale#Set('html_stylelint_use_global', 0)
|
call ale#Set('html_stylelint_use_global', 0)
|
||||||
|
|
||||||
function! ale_linters#html#stylelint#GetExecutable(buffer) abort
|
function! ale_linters#html#stylelint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'html_stylelint', [
|
return ale#path#FindExecutable(a:buffer, 'html_stylelint', [
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('ink_ls_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
call ale#Set('ink_ls_initialization_options', {})
|
call ale#Set('ink_ls_initialization_options', {})
|
||||||
|
|
||||||
function! ale_linters#ink#ls#GetExecutable(buffer) abort
|
function! ale_linters#ink#ls#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'ink_ls', [
|
return ale#path#FindExecutable(a:buffer, 'ink_ls', [
|
||||||
\ 'ink-language-server',
|
\ 'ink-language-server',
|
||||||
\ 'node_modules/.bin/ink-language-server',
|
\ 'node_modules/.bin/ink-language-server',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -22,7 +22,7 @@ function! ale_linters#javascript#flow#GetExecutable(buffer) abort
|
||||||
return ''
|
return ''
|
||||||
endif
|
endif
|
||||||
|
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_flow', [
|
return ale#path#FindExecutable(a:buffer, 'javascript_flow', [
|
||||||
\ 'node_modules/.bin/flow',
|
\ 'node_modules/.bin/flow',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -19,7 +19,7 @@ endfunction
|
||||||
call ale#linter#Define('javascript', {
|
call ale#linter#Define('javascript', {
|
||||||
\ 'name': 'flow-language-server',
|
\ 'name': 'flow-language-server',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'javascript_flow_ls', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'javascript_flow_ls', [
|
||||||
\ 'node_modules/.bin/flow',
|
\ 'node_modules/.bin/flow',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e lsp --from ale-lsp',
|
\ 'command': '%e lsp --from ale-lsp',
|
||||||
|
|
|
@ -53,7 +53,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('javascript', {
|
call ale#linter#Define('javascript', {
|
||||||
\ 'name': 'jscs',
|
\ 'name': 'jscs',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'javascript_jscs', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'javascript_jscs', [
|
||||||
\ 'node_modules/.bin/jscs',
|
\ 'node_modules/.bin/jscs',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#javascript#jscs#GetCommand'),
|
\ 'command': function('ale_linters#javascript#jscs#GetCommand'),
|
||||||
|
|
|
@ -25,7 +25,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('javascript', {
|
call ale#linter#Define('javascript', {
|
||||||
\ 'name': 'jshint',
|
\ 'name': 'jshint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'javascript_jshint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'javascript_jshint', [
|
||||||
\ 'node_modules/.bin/jshint',
|
\ 'node_modules/.bin/jshint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#javascript#jshint#GetCommand'),
|
\ 'command': function('ale_linters#javascript#jshint#GetCommand'),
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('javascript_standard_use_global', get(g:, 'ale_use_global_executabl
|
||||||
call ale#Set('javascript_standard_options', '')
|
call ale#Set('javascript_standard_options', '')
|
||||||
|
|
||||||
function! ale_linters#javascript#standard#GetExecutable(buffer) abort
|
function! ale_linters#javascript#standard#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_standard', [
|
return ale#path#FindExecutable(a:buffer, 'javascript_standard', [
|
||||||
\ 'node_modules/standardx/bin/cmd.js',
|
\ 'node_modules/standardx/bin/cmd.js',
|
||||||
\ 'node_modules/standard/bin/cmd.js',
|
\ 'node_modules/standard/bin/cmd.js',
|
||||||
\ 'node_modules/semistandard/bin/cmd.js',
|
\ 'node_modules/semistandard/bin/cmd.js',
|
||||||
|
|
|
@ -8,7 +8,7 @@ call ale#Set('javascript_tsserver_use_global', get(g:, 'ale_use_global_executabl
|
||||||
call ale#linter#Define('javascript', {
|
call ale#linter#Define('javascript', {
|
||||||
\ 'name': 'tsserver',
|
\ 'name': 'tsserver',
|
||||||
\ 'lsp': 'tsserver',
|
\ 'lsp': 'tsserver',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'javascript_tsserver', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'javascript_tsserver', [
|
||||||
\ 'node_modules/.bin/tsserver',
|
\ 'node_modules/.bin/tsserver',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e',
|
\ 'command': '%e',
|
||||||
|
|
|
@ -4,7 +4,7 @@ call ale#Set('json_jsonlint_executable', 'jsonlint')
|
||||||
call ale#Set('json_jsonlint_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('json_jsonlint_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#json#jsonlint#GetExecutable(buffer) abort
|
function! ale_linters#json#jsonlint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'json_jsonlint', [
|
return ale#path#FindExecutable(a:buffer, 'json_jsonlint', [
|
||||||
\ 'node_modules/.bin/jsonlint',
|
\ 'node_modules/.bin/jsonlint',
|
||||||
\ 'node_modules/jsonlint/lib/cli.js',
|
\ 'node_modules/jsonlint/lib/cli.js',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('json_spectral_use_global', get(g:, 'ale_use_global_executables', 0
|
||||||
|
|
||||||
call ale#linter#Define('json', {
|
call ale#linter#Define('json', {
|
||||||
\ 'name': 'spectral',
|
\ 'name': 'spectral',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'json_spectral', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'json_spectral', [
|
||||||
\ 'node_modules/.bin/spectral',
|
\ 'node_modules/.bin/spectral',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e lint --ignore-unknown-format -q -f text %t',
|
\ 'command': '%e lint --ignore-unknown-format -q -f text %t',
|
||||||
|
|
|
@ -38,7 +38,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('less', {
|
call ale#linter#Define('less', {
|
||||||
\ 'name': 'lessc',
|
\ 'name': 'lessc',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'less_lessc', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'less_lessc', [
|
||||||
\ 'node_modules/.bin/lessc',
|
\ 'node_modules/.bin/lessc',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#less#lessc#GetCommand'),
|
\ 'command': function('ale_linters#less#lessc#GetCommand'),
|
||||||
|
|
|
@ -12,7 +12,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('less', {
|
call ale#linter#Define('less', {
|
||||||
\ 'name': 'stylelint',
|
\ 'name': 'stylelint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'less_stylelint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'less_stylelint', [
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#less#stylelint#GetCommand'),
|
\ 'command': function('ale_linters#less#stylelint#GetCommand'),
|
||||||
|
|
|
@ -39,7 +39,7 @@ endfunction
|
||||||
call ale#linter#Define('markdown', {
|
call ale#linter#Define('markdown', {
|
||||||
\ 'name': 'remark_lint',
|
\ 'name': 'remark_lint',
|
||||||
\ 'aliases': ['remark-lint'],
|
\ 'aliases': ['remark-lint'],
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'markdown_remark_lint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'markdown_remark_lint', [
|
||||||
\ 'node_modules/.bin/remark',
|
\ 'node_modules/.bin/remark',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#markdown#remark_lint#GetCommand'),
|
\ 'command': function('ale_linters#markdown#remark_lint#GetCommand'),
|
||||||
|
|
17
sources_non_forked/ale/ale_linters/ocamlinterface/merlin.vim
Normal file
17
sources_non_forked/ale/ale_linters/ocamlinterface/merlin.vim
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
" Author: Andrey Popp -- @andreypopp
|
||||||
|
" Description: Report errors in OCaml code with Merlin
|
||||||
|
|
||||||
|
if !exists('g:merlin')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
function! ale_linters#ocamlinterface#merlin#Handle(buffer, lines) abort
|
||||||
|
return merlin#ErrorLocList()
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
call ale#linter#Define('ocamlinterface', {
|
||||||
|
\ 'name': 'merlin',
|
||||||
|
\ 'executable': 'ocamlmerlin',
|
||||||
|
\ 'command': 'true',
|
||||||
|
\ 'callback': 'ale_linters#ocamlinterface#merlin#Handle',
|
||||||
|
\})
|
|
@ -0,0 +1,13 @@
|
||||||
|
" Author: Risto Stevcev <me@risto.codes>
|
||||||
|
" Description: The official language server for OCaml
|
||||||
|
|
||||||
|
call ale#Set('ocaml_ocamllsp_use_opam', 1)
|
||||||
|
|
||||||
|
call ale#linter#Define('ocamlinterface', {
|
||||||
|
\ 'name': 'ocamllsp',
|
||||||
|
\ 'lsp': 'stdio',
|
||||||
|
\ 'executable': function('ale#handlers#ocamllsp#GetExecutable'),
|
||||||
|
\ 'command': function('ale#handlers#ocamllsp#GetCommand'),
|
||||||
|
\ 'language': function('ale#handlers#ocamllsp#GetLanguage'),
|
||||||
|
\ 'project_root': function('ale#handlers#ocamllsp#GetProjectRoot'),
|
||||||
|
\})
|
|
@ -26,7 +26,7 @@ call ale#linter#Define('php', {
|
||||||
\ 'name': 'intelephense',
|
\ 'name': 'intelephense',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'initialization_options': function('ale_linters#php#intelephense#GetInitializationOptions'),
|
\ 'initialization_options': function('ale_linters#php#intelephense#GetInitializationOptions'),
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'php_intelephense', [])},
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'php_intelephense', [])},
|
||||||
\ 'command': '%e --stdio',
|
\ 'command': '%e --stdio',
|
||||||
\ 'project_root': function('ale_linters#php#intelephense#GetProjectRoot'),
|
\ 'project_root': function('ale_linters#php#intelephense#GetProjectRoot'),
|
||||||
\})
|
\})
|
||||||
|
|
|
@ -19,7 +19,7 @@ endfunction
|
||||||
call ale#linter#Define('php', {
|
call ale#linter#Define('php', {
|
||||||
\ 'name': 'langserver',
|
\ 'name': 'langserver',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'php_langserver', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'php_langserver', [
|
||||||
\ 'vendor/bin/php-language-server.php',
|
\ 'vendor/bin/php-language-server.php',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': 'php %e',
|
\ 'command': 'php %e',
|
||||||
|
|
|
@ -44,7 +44,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('php', {
|
call ale#linter#Define('php', {
|
||||||
\ 'name': 'phpcs',
|
\ 'name': 'phpcs',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'php_phpcs', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'php_phpcs', [
|
||||||
\ 'vendor/bin/phpcs',
|
\ 'vendor/bin/phpcs',
|
||||||
\ 'phpcs'
|
\ 'phpcs'
|
||||||
\ ])},
|
\ ])},
|
||||||
|
|
|
@ -18,7 +18,7 @@ endfunction
|
||||||
call ale#linter#Define('php', {
|
call ale#linter#Define('php', {
|
||||||
\ 'name': 'psalm',
|
\ 'name': 'psalm',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'php_psalm', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'php_psalm', [
|
||||||
\ 'vendor/bin/psalm',
|
\ 'vendor/bin/psalm',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#php#psalm#GetCommand'),
|
\ 'command': function('ale_linters#php#psalm#GetCommand'),
|
||||||
|
|
|
@ -20,7 +20,7 @@ function! ale_linters#php#tlint#GetProjectRoot(buffer) abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale_linters#php#tlint#GetExecutable(buffer) abort
|
function! ale_linters#php#tlint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'php_tlint', [
|
return ale#path#FindExecutable(a:buffer, 'php_tlint', [
|
||||||
\ 'vendor/bin/tlint',
|
\ 'vendor/bin/tlint',
|
||||||
\ 'tlint',
|
\ 'tlint',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -47,7 +47,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('pug', {
|
call ale#linter#Define('pug', {
|
||||||
\ 'name': 'puglint',
|
\ 'name': 'puglint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'pug_puglint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'pug_puglint', [
|
||||||
\ 'node_modules/.bin/pug-lint',
|
\ 'node_modules/.bin/pug-lint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'output_stream': 'stderr',
|
\ 'output_stream': 'stderr',
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('purescript_ls_use_global', get(g:, 'ale_use_global_executables', 0
|
||||||
call ale#Set('purescript_ls_config', {})
|
call ale#Set('purescript_ls_config', {})
|
||||||
|
|
||||||
function! ale_linters#purescript#ls#GetExecutable(buffer) abort
|
function! ale_linters#purescript#ls#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'purescript_ls', [
|
return ale#path#FindExecutable(a:buffer, 'purescript_ls', [
|
||||||
\ 'node_modules/.bin/purescript-language-server',
|
\ 'node_modules/.bin/purescript-language-server',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
" Author: Michel Lang <michellang@gmail.com>, w0rp <devw0rp@gmail.com>,
|
" Author: Michel Lang <michellang@gmail.com>, w0rp <devw0rp@gmail.com>,
|
||||||
" Fenner Macrae <fmacrae.dev@gmail.com>
|
" Fenner Macrae <fmacrae.dev@gmail.com>,
|
||||||
|
" ourigen <https://github.com/ourigen>
|
||||||
" Description: This file adds support for checking R code with lintr.
|
" Description: This file adds support for checking R code with lintr.
|
||||||
|
|
||||||
let g:ale_r_lintr_options = get(g:, 'ale_r_lintr_options', 'with_defaults()')
|
let g:ale_r_lintr_options = get(g:, 'ale_r_lintr_options', 'with_defaults()')
|
||||||
|
@ -21,7 +22,7 @@ function! ale_linters#r#lintr#GetCommand(buffer) abort
|
||||||
let l:cmd_string = 'suppressPackageStartupMessages(library(lintr));'
|
let l:cmd_string = 'suppressPackageStartupMessages(library(lintr));'
|
||||||
\ . l:lint_cmd
|
\ . l:lint_cmd
|
||||||
|
|
||||||
return 'Rscript --vanilla -e ' . ale#Escape(l:cmd_string) . ' %t'
|
return 'Rscript --no-save --no-restore --no-site-file --no-init-file -e ' . ale#Escape(l:cmd_string) . ' %t'
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
call ale#linter#Define('r', {
|
call ale#linter#Define('r', {
|
||||||
|
|
|
@ -5,7 +5,7 @@ call ale#Set('sass_sasslint_options', '')
|
||||||
call ale#Set('sass_sasslint_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('sass_sasslint_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#sass#sasslint#GetExecutable(buffer) abort
|
function! ale_linters#sass#sasslint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'sass_sasslint', [
|
return ale#path#FindExecutable(a:buffer, 'sass_sasslint', [
|
||||||
\ 'node_modules/sass-lint/bin/sass-lint.js',
|
\ 'node_modules/sass-lint/bin/sass-lint.js',
|
||||||
\ 'node_modules/.bin/sass-lint',
|
\ 'node_modules/.bin/sass-lint',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -5,7 +5,7 @@ call ale#Set('sass_stylelint_use_global', get(g:, 'ale_use_global_executables',
|
||||||
|
|
||||||
call ale#linter#Define('sass', {
|
call ale#linter#Define('sass', {
|
||||||
\ 'name': 'stylelint',
|
\ 'name': 'stylelint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'sass_stylelint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'sass_stylelint', [
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e --stdin-filename %s',
|
\ 'command': '%e --stdin-filename %s',
|
||||||
|
|
|
@ -5,7 +5,7 @@ call ale#Set('scss_sasslint_options', '')
|
||||||
call ale#Set('scss_sasslint_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('scss_sasslint_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#scss#sasslint#GetExecutable(buffer) abort
|
function! ale_linters#scss#sasslint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'scss_sasslint', [
|
return ale#path#FindExecutable(a:buffer, 'scss_sasslint', [
|
||||||
\ 'node_modules/sass-lint/bin/sass-lint.js',
|
\ 'node_modules/sass-lint/bin/sass-lint.js',
|
||||||
\ 'node_modules/.bin/sass-lint',
|
\ 'node_modules/.bin/sass-lint',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -11,7 +11,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('scss', {
|
call ale#linter#Define('scss', {
|
||||||
\ 'name': 'stylelint',
|
\ 'name': 'stylelint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'scss_stylelint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'scss_stylelint', [
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#scss#stylelint#GetCommand'),
|
\ 'command': function('ale_linters#scss#stylelint#GetCommand'),
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('sh_language_server_executable', 'bash-language-server')
|
||||||
call ale#Set('sh_language_server_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('sh_language_server_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#sh#language_server#GetExecutable(buffer) abort
|
function! ale_linters#sh#language_server#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'sh_language_server', [
|
return ale#path#FindExecutable(a:buffer, 'sh_language_server', [
|
||||||
\ 'node_modules/.bin/bash-language-server',
|
\ 'node_modules/.bin/bash-language-server',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -12,7 +12,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('stylus', {
|
call ale#linter#Define('stylus', {
|
||||||
\ 'name': 'stylelint',
|
\ 'name': 'stylelint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'stylus_stylelint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'stylus_stylelint', [
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#stylus#stylelint#GetCommand'),
|
\ 'command': function('ale_linters#stylus#stylelint#GetCommand'),
|
||||||
|
|
|
@ -13,7 +13,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('sugarss', {
|
call ale#linter#Define('sugarss', {
|
||||||
\ 'name': 'stylelint',
|
\ 'name': 'stylelint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'sugarss_stylelint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'sugarss_stylelint', [
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': function('ale_linters#sugarss#stylelint#GetCommand'),
|
\ 'command': function('ale_linters#sugarss#stylelint#GetCommand'),
|
||||||
|
|
|
@ -13,7 +13,7 @@ endfunction
|
||||||
call ale#linter#Define('svelte', {
|
call ale#linter#Define('svelte', {
|
||||||
\ 'name': 'svelteserver',
|
\ 'name': 'svelteserver',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'svelte_svelteserver', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'svelte_svelteserver', [
|
||||||
\ 'node_modules/.bin/svelteserver',
|
\ 'node_modules/.bin/svelteserver',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e --stdio',
|
\ 'command': '%e --stdio',
|
||||||
|
|
|
@ -5,7 +5,7 @@ call ale#Set('swift_swiftlint_executable', 'swiftlint')
|
||||||
call ale#Set('swift_swiftlint_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('swift_swiftlint_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale_linters#swift#swiftlint#GetExecutable(buffer) abort
|
function! ale_linters#swift#swiftlint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'swift_swiftlint', [
|
return ale#path#FindExecutable(a:buffer, 'swift_swiftlint', [
|
||||||
\ 'Pods/SwiftLint/swiftlint',
|
\ 'Pods/SwiftLint/swiftlint',
|
||||||
\ 'ios/Pods/SwiftLint/swiftlint',
|
\ 'ios/Pods/SwiftLint/swiftlint',
|
||||||
\ 'swiftlint',
|
\ 'swiftlint',
|
||||||
|
|
|
@ -91,7 +91,7 @@ function! ale_linters#terraform#tflint#GetCommand(buffer) abort
|
||||||
let l:cmd .= ' ' . l:opts
|
let l:cmd .= ' ' . l:opts
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let l:cmd .= ' -f json %t'
|
let l:cmd .= ' -f json'
|
||||||
|
|
||||||
return l:cmd
|
return l:cmd
|
||||||
endfunction
|
endfunction
|
||||||
|
@ -99,6 +99,7 @@ endfunction
|
||||||
call ale#linter#Define('terraform', {
|
call ale#linter#Define('terraform', {
|
||||||
\ 'name': 'tflint',
|
\ 'name': 'tflint',
|
||||||
\ 'executable': {b -> ale#Var(b, 'terraform_tflint_executable')},
|
\ 'executable': {b -> ale#Var(b, 'terraform_tflint_executable')},
|
||||||
|
\ 'cwd': '%s:h',
|
||||||
\ 'command': function('ale_linters#terraform#tflint#GetCommand'),
|
\ 'command': function('ale_linters#terraform#tflint#GetCommand'),
|
||||||
\ 'callback': 'ale_linters#terraform#tflint#Handle',
|
\ 'callback': 'ale_linters#terraform#tflint#Handle',
|
||||||
\})
|
\})
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
" Author: Ricardo Liang <ricardoliang@gmail.com>
|
" Author: Ricardo Liang <ricardoliang@gmail.com>
|
||||||
" Author: ourigen <ourigen [at] pm.me>
|
" Author: ourigen <https://github.com/ourigen>
|
||||||
" Description: Texlab language server (Rust rewrite)
|
" Description: Texlab language server (Rust rewrite)
|
||||||
|
|
||||||
call ale#Set('tex_texlab_executable', 'texlab')
|
call ale#Set('tex_texlab_executable', 'texlab')
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('typescript_standard_use_global', get(g:, 'ale_use_global_executabl
|
||||||
call ale#Set('typescript_standard_options', '')
|
call ale#Set('typescript_standard_options', '')
|
||||||
|
|
||||||
function! ale_linters#typescript#standard#GetExecutable(buffer) abort
|
function! ale_linters#typescript#standard#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'typescript_standard', [
|
return ale#path#FindExecutable(a:buffer, 'typescript_standard', [
|
||||||
\ 'node_modules/standardx/bin/cmd.js',
|
\ 'node_modules/standardx/bin/cmd.js',
|
||||||
\ 'node_modules/standard/bin/cmd.js',
|
\ 'node_modules/standard/bin/cmd.js',
|
||||||
\ 'node_modules/.bin/standard',
|
\ 'node_modules/.bin/standard',
|
||||||
|
|
|
@ -8,7 +8,7 @@ call ale#Set('typescript_tsserver_use_global', get(g:, 'ale_use_global_executabl
|
||||||
call ale#linter#Define('typescript', {
|
call ale#linter#Define('typescript', {
|
||||||
\ 'name': 'tsserver',
|
\ 'name': 'tsserver',
|
||||||
\ 'lsp': 'tsserver',
|
\ 'lsp': 'tsserver',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'typescript_tsserver', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'typescript_tsserver', [
|
||||||
\ '.yarn/sdks/typescript/bin/tsserver',
|
\ '.yarn/sdks/typescript/bin/tsserver',
|
||||||
\ 'node_modules/.bin/tsserver',
|
\ 'node_modules/.bin/tsserver',
|
||||||
\ ])},
|
\ ])},
|
||||||
|
|
|
@ -52,7 +52,7 @@ call ale#linter#Define('vim', {
|
||||||
\ 'name': 'vimls',
|
\ 'name': 'vimls',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'lsp_config': {b -> ale#Var(b, 'vim_vimls_config')},
|
\ 'lsp_config': {b -> ale#Var(b, 'vim_vimls_config')},
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'vim_vimls', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'vim_vimls', [
|
||||||
\ 'node_modules/.bin/vim-language-server',
|
\ 'node_modules/.bin/vim-language-server',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e --stdio',
|
\ 'command': '%e --stdio',
|
||||||
|
|
|
@ -13,7 +13,7 @@ endfunction
|
||||||
call ale#linter#Define('vue', {
|
call ale#linter#Define('vue', {
|
||||||
\ 'name': 'vls',
|
\ 'name': 'vls',
|
||||||
\ 'lsp': 'stdio',
|
\ 'lsp': 'stdio',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'vue_vls', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'vue_vls', [
|
||||||
\ 'node_modules/.bin/vls',
|
\ 'node_modules/.bin/vls',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e --stdio',
|
\ 'command': '%e --stdio',
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('yaml_spectral_use_global', get(g:, 'ale_use_global_executables', 0
|
||||||
|
|
||||||
call ale#linter#Define('yaml', {
|
call ale#linter#Define('yaml', {
|
||||||
\ 'name': 'spectral',
|
\ 'name': 'spectral',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'yaml_spectral', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'yaml_spectral', [
|
||||||
\ 'node_modules/.bin/spectral',
|
\ 'node_modules/.bin/spectral',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e lint --ignore-unknown-format -q -f text %t',
|
\ 'command': '%e lint --ignore-unknown-format -q -f text %t',
|
||||||
|
|
|
@ -32,7 +32,7 @@ endfunction
|
||||||
|
|
||||||
call ale#linter#Define('yaml', {
|
call ale#linter#Define('yaml', {
|
||||||
\ 'name': 'swaglint',
|
\ 'name': 'swaglint',
|
||||||
\ 'executable': {b -> ale#node#FindExecutable(b, 'yaml_swaglint', [
|
\ 'executable': {b -> ale#path#FindExecutable(b, 'yaml_swaglint', [
|
||||||
\ 'node_modules/.bin/swaglint',
|
\ 'node_modules/.bin/swaglint',
|
||||||
\ ])},
|
\ ])},
|
||||||
\ 'command': '%e -r compact --stdin',
|
\ 'command': '%e -r compact --stdin',
|
||||||
|
|
|
@ -303,12 +303,12 @@ let s:default_registry = {
|
||||||
\ },
|
\ },
|
||||||
\ 'ocamlformat': {
|
\ 'ocamlformat': {
|
||||||
\ 'function': 'ale#fixers#ocamlformat#Fix',
|
\ 'function': 'ale#fixers#ocamlformat#Fix',
|
||||||
\ 'suggested_filetypes': ['ocaml'],
|
\ 'suggested_filetypes': ['ocaml', 'ocamlinterface'],
|
||||||
\ 'description': 'Fix OCaml files with ocamlformat.',
|
\ 'description': 'Fix OCaml files with ocamlformat.',
|
||||||
\ },
|
\ },
|
||||||
\ 'ocp-indent': {
|
\ 'ocp-indent': {
|
||||||
\ 'function': 'ale#fixers#ocp_indent#Fix',
|
\ 'function': 'ale#fixers#ocp_indent#Fix',
|
||||||
\ 'suggested_filetypes': ['ocaml'],
|
\ 'suggested_filetypes': ['ocaml', 'ocamlinterface'],
|
||||||
\ 'description': 'Fix OCaml files with ocp-indent.',
|
\ 'description': 'Fix OCaml files with ocp-indent.',
|
||||||
\ },
|
\ },
|
||||||
\ 'refmt': {
|
\ 'refmt': {
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('bazel_buildifier_use_global', get(g:, 'ale_use_global_executables'
|
||||||
call ale#Set('bazel_buildifier_options', '')
|
call ale#Set('bazel_buildifier_options', '')
|
||||||
|
|
||||||
function! ale#fixers#buildifier#GetExecutable(buffer) abort
|
function! ale#fixers#buildifier#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'bazel_buildifier', [
|
return ale#path#FindExecutable(a:buffer, 'bazel_buildifier', [
|
||||||
\ 'buildifier',
|
\ 'buildifier',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -9,7 +9,7 @@ call ale#Set('c_clangformat_style_option', '')
|
||||||
call ale#Set('c_clangformat_use_local_file', 0)
|
call ale#Set('c_clangformat_use_local_file', 0)
|
||||||
|
|
||||||
function! ale#fixers#clangformat#GetExecutable(buffer) abort
|
function! ale#fixers#clangformat#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'c_clangformat', [
|
return ale#path#FindExecutable(a:buffer, 'c_clangformat', [
|
||||||
\ 'clang-format',
|
\ 'clang-format',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -10,9 +10,7 @@ function! ale#fixers#cmakeformat#Fix(buffer) abort
|
||||||
|
|
||||||
return {
|
return {
|
||||||
\ 'command': ale#Escape(l:executable)
|
\ 'command': ale#Escape(l:executable)
|
||||||
\ . ' -i '
|
|
||||||
\ . (empty(l:options) ? '' : ' ' . l:options)
|
\ . (empty(l:options) ? '' : ' ' . l:options)
|
||||||
\ . ' %t',
|
\ . ' -'
|
||||||
\ 'read_temporary_file': 1,
|
|
||||||
\}
|
\}
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('elm_format_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
call ale#Set('elm_format_options', '--yes')
|
call ale#Set('elm_format_options', '--yes')
|
||||||
|
|
||||||
function! ale#fixers#elm_format#GetExecutable(buffer) abort
|
function! ale#fixers#elm_format#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'elm_format', [
|
return ale#path#FindExecutable(a:buffer, 'elm_format', [
|
||||||
\ 'node_modules/.bin/elm-format',
|
\ 'node_modules/.bin/elm-format',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('erlang_erlfmt_use_global', get(g:, 'ale_use_global_executables', 0
|
||||||
call ale#Set('erlang_erlfmt_options', '')
|
call ale#Set('erlang_erlfmt_options', '')
|
||||||
|
|
||||||
function! ale#fixers#erlfmt#GetExecutable(buffer) abort
|
function! ale#fixers#erlfmt#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'erlang_erlfmt', ['erlfmt'])
|
return ale#path#FindExecutable(a:buffer, 'erlang_erlfmt', ['erlfmt'])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#fixers#erlfmt#Fix(buffer) abort
|
function! ale#fixers#erlfmt#Fix(buffer) abort
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('json_fixjson_options', '')
|
||||||
call ale#Set('json_fixjson_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('json_fixjson_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale#fixers#fixjson#GetExecutable(buffer) abort
|
function! ale#fixers#fixjson#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'json_fixjson', [
|
return ale#path#FindExecutable(a:buffer, 'json_fixjson', [
|
||||||
\ 'node_modules/.bin/fixjson',
|
\ 'node_modules/.bin/fixjson',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('php_cs_fixer_use_global', get(g:, 'ale_use_global_executables', 0)
|
||||||
call ale#Set('php_cs_fixer_options', '')
|
call ale#Set('php_cs_fixer_options', '')
|
||||||
|
|
||||||
function! ale#fixers#php_cs_fixer#GetExecutable(buffer) abort
|
function! ale#fixers#php_cs_fixer#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'php_cs_fixer', [
|
return ale#path#FindExecutable(a:buffer, 'php_cs_fixer', [
|
||||||
\ 'vendor/bin/php-cs-fixer',
|
\ 'vendor/bin/php-cs-fixer',
|
||||||
\ 'php-cs-fixer'
|
\ 'php-cs-fixer'
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -7,7 +7,7 @@ call ale#Set('php_phpcbf_executable', 'phpcbf')
|
||||||
call ale#Set('php_phpcbf_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('php_phpcbf_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale#fixers#phpcbf#GetExecutable(buffer) abort
|
function! ale#fixers#phpcbf#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'php_phpcbf', [
|
return ale#path#FindExecutable(a:buffer, 'php_phpcbf', [
|
||||||
\ 'vendor/bin/phpcbf',
|
\ 'vendor/bin/phpcbf',
|
||||||
\ 'phpcbf'
|
\ 'phpcbf'
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -7,7 +7,7 @@ call ale#Set('javascript_prettier_use_global', get(g:, 'ale_use_global_executabl
|
||||||
call ale#Set('javascript_prettier_options', '')
|
call ale#Set('javascript_prettier_options', '')
|
||||||
|
|
||||||
function! ale#fixers#prettier#GetExecutable(buffer) abort
|
function! ale#fixers#prettier#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_prettier', [
|
return ale#path#FindExecutable(a:buffer, 'javascript_prettier', [
|
||||||
\ 'node_modules/.bin/prettier_d',
|
\ 'node_modules/.bin/prettier_d',
|
||||||
\ 'node_modules/prettier-cli/index.js',
|
\ 'node_modules/prettier-cli/index.js',
|
||||||
\ 'node_modules/.bin/prettier',
|
\ 'node_modules/.bin/prettier',
|
||||||
|
|
|
@ -7,7 +7,7 @@ call ale#Set('javascript_prettier_eslint_use_global', get(g:, 'ale_use_global_ex
|
||||||
call ale#Set('javascript_prettier_eslint_options', '')
|
call ale#Set('javascript_prettier_eslint_options', '')
|
||||||
|
|
||||||
function! ale#fixers#prettier_eslint#GetExecutable(buffer) abort
|
function! ale#fixers#prettier_eslint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_prettier_eslint', [
|
return ale#path#FindExecutable(a:buffer, 'javascript_prettier_eslint', [
|
||||||
\ 'node_modules/prettier-eslint-cli/dist/index.js',
|
\ 'node_modules/prettier-eslint-cli/dist/index.js',
|
||||||
\ 'node_modules/.bin/prettier-eslint',
|
\ 'node_modules/.bin/prettier-eslint',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('javascript_prettier_standard_use_global', get(g:, 'ale_use_global_
|
||||||
call ale#Set('javascript_prettier_standard_options', '')
|
call ale#Set('javascript_prettier_standard_options', '')
|
||||||
|
|
||||||
function! ale#fixers#prettier_standard#GetExecutable(buffer) abort
|
function! ale#fixers#prettier_standard#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_prettier_standard', [
|
return ale#path#FindExecutable(a:buffer, 'javascript_prettier_standard', [
|
||||||
\ 'node_modules/prettier-standard/lib/index.js',
|
\ 'node_modules/prettier-standard/lib/index.js',
|
||||||
\ 'node_modules/.bin/prettier-standard',
|
\ 'node_modules/.bin/prettier-standard',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('markdown_remark_lint_use_global', get(g:, 'ale_use_global_executab
|
||||||
call ale#Set('markdown_remark_lint_options', '')
|
call ale#Set('markdown_remark_lint_options', '')
|
||||||
|
|
||||||
function! ale#fixers#remark_lint#GetExecutable(buffer) abort
|
function! ale#fixers#remark_lint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'markdown_remark_lint', [
|
return ale#path#FindExecutable(a:buffer, 'markdown_remark_lint', [
|
||||||
\ 'node_modules/remark-cli/cli.js',
|
\ 'node_modules/remark-cli/cli.js',
|
||||||
\ 'node_modules/.bin/remark',
|
\ 'node_modules/.bin/remark',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('javascript_standard_use_global', get(g:, 'ale_use_global_executabl
|
||||||
call ale#Set('javascript_standard_options', '')
|
call ale#Set('javascript_standard_options', '')
|
||||||
|
|
||||||
function! ale#fixers#standard#GetExecutable(buffer) abort
|
function! ale#fixers#standard#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_standard', [
|
return ale#path#FindExecutable(a:buffer, 'javascript_standard', [
|
||||||
\ 'node_modules/standardx/bin/cmd.js',
|
\ 'node_modules/standardx/bin/cmd.js',
|
||||||
\ 'node_modules/standard/bin/cmd.js',
|
\ 'node_modules/standard/bin/cmd.js',
|
||||||
\ 'node_modules/.bin/standard',
|
\ 'node_modules/.bin/standard',
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('stylelint_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
call ale#Set('stylelint_options', '')
|
call ale#Set('stylelint_options', '')
|
||||||
|
|
||||||
function! ale#fixers#stylelint#GetExecutable(buffer) abort
|
function! ale#fixers#stylelint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'stylelint', [
|
return ale#path#FindExecutable(a:buffer, 'stylelint', [
|
||||||
\ 'node_modules/stylelint/bin/stylelint.js',
|
\ 'node_modules/stylelint/bin/stylelint.js',
|
||||||
\ 'node_modules/.bin/stylelint',
|
\ 'node_modules/.bin/stylelint',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('swift_swiftformat_use_global', get(g:, 'ale_use_global_executables
|
||||||
call ale#Set('swift_swiftformat_options', '')
|
call ale#Set('swift_swiftformat_options', '')
|
||||||
|
|
||||||
function! ale#fixers#swiftformat#GetExecutable(buffer) abort
|
function! ale#fixers#swiftformat#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'swift_swiftformat', [
|
return ale#path#FindExecutable(a:buffer, 'swift_swiftformat', [
|
||||||
\ 'Pods/SwiftFormat/CommandLineTool/swiftformat',
|
\ 'Pods/SwiftFormat/CommandLineTool/swiftformat',
|
||||||
\ 'ios/Pods/SwiftFormat/CommandLineTool/swiftformat',
|
\ 'ios/Pods/SwiftFormat/CommandLineTool/swiftformat',
|
||||||
\ 'swiftformat',
|
\ 'swiftformat',
|
||||||
|
|
|
@ -5,7 +5,7 @@ call ale#Set('html_tidy_executable', 'tidy')
|
||||||
call ale#Set('html_tidy_use_global', get(g:, 'ale_use_global_executables', 0))
|
call ale#Set('html_tidy_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
|
|
||||||
function! ale#fixers#tidy#Fix(buffer) abort
|
function! ale#fixers#tidy#Fix(buffer) abort
|
||||||
let l:executable = ale#node#FindExecutable(
|
let l:executable = ale#path#FindExecutable(
|
||||||
\ a:buffer,
|
\ a:buffer,
|
||||||
\ 'html_tidy',
|
\ 'html_tidy',
|
||||||
\ ['tidy'],
|
\ ['tidy'],
|
||||||
|
|
|
@ -42,3 +42,17 @@ function! ale#go#EnvString(buffer) abort
|
||||||
|
|
||||||
return l:env
|
return l:env
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
function! ale#go#GetGoPathExecutable(suffix) abort
|
||||||
|
let l:prefix = $GOPATH
|
||||||
|
|
||||||
|
if !empty($GOPATH)
|
||||||
|
let l:prefix = $GOPATH
|
||||||
|
elseif has('win32')
|
||||||
|
let l:prefix = $USERPROFILE . '/go'
|
||||||
|
else
|
||||||
|
let l:prefix = $HOME . '/go'
|
||||||
|
endif
|
||||||
|
|
||||||
|
return ale#path#Simplify(l:prefix . '/' . a:suffix)
|
||||||
|
endfunction
|
||||||
|
|
|
@ -3,7 +3,7 @@ scriptencoding utf-8
|
||||||
" Description: Error handling for errors in alex output format
|
" Description: Error handling for errors in alex output format
|
||||||
|
|
||||||
function! ale#handlers#alex#GetExecutable(buffer) abort
|
function! ale#handlers#alex#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'alex', [
|
return ale#path#FindExecutable(a:buffer, 'alex', [
|
||||||
\ 'node_modules/.bin/alex',
|
\ 'node_modules/.bin/alex',
|
||||||
\ 'node_modules/alex/cli.js',
|
\ 'node_modules/alex/cli.js',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -36,7 +36,7 @@ function! ale#handlers#eslint#FindConfig(buffer) abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#handlers#eslint#GetExecutable(buffer) abort
|
function! ale#handlers#eslint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_eslint', s:executables)
|
return ale#path#FindExecutable(a:buffer, 'javascript_eslint', s:executables)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" Given a buffer, return an appropriate working directory for ESLint.
|
" Given a buffer, return an appropriate working directory for ESLint.
|
||||||
|
@ -49,7 +49,7 @@ function! ale#handlers#eslint#GetCwd(buffer) abort
|
||||||
" If eslint is installed in a directory which contains the buffer, assume
|
" If eslint is installed in a directory which contains the buffer, assume
|
||||||
" it is the ESLint project root. Otherwise, use nearest node_modules.
|
" it is the ESLint project root. Otherwise, use nearest node_modules.
|
||||||
" Note: If node_modules not present yet, can't load local deps anyway.
|
" Note: If node_modules not present yet, can't load local deps anyway.
|
||||||
let l:executable = ale#node#FindNearestExecutable(a:buffer, s:executables)
|
let l:executable = ale#path#FindNearestExecutable(a:buffer, s:executables)
|
||||||
|
|
||||||
if !empty(l:executable)
|
if !empty(l:executable)
|
||||||
let l:nmi = strridx(l:executable, 'node_modules')
|
let l:nmi = strridx(l:executable, 'node_modules')
|
||||||
|
|
|
@ -9,7 +9,7 @@ function! ale#handlers#fecs#GetCommand(buffer) abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#handlers#fecs#GetExecutable(buffer) abort
|
function! ale#handlers#fecs#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'javascript_fecs', [
|
return ale#path#FindExecutable(a:buffer, 'javascript_fecs', [
|
||||||
\ 'node_modules/.bin/fecs',
|
\ 'node_modules/.bin/fecs',
|
||||||
\ 'node_modules/fecs/bin/fecs',
|
\ 'node_modules/fecs/bin/fecs',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
" Author: Risto Stevcev <me@risto.codes>
|
" Author: Risto Stevcev <me@risto.codes>
|
||||||
" Description: Handlers for the official OCaml language server
|
" Description: Handlers for the official OCaml language server
|
||||||
|
|
||||||
|
let s:language_id_of_filetype = {
|
||||||
|
\ 'menhir': 'ocaml.menhir',
|
||||||
|
\ 'ocaml': 'ocaml',
|
||||||
|
\ 'ocamlinterface': 'ocaml.interface',
|
||||||
|
\ 'ocamllex': 'ocaml.lex'
|
||||||
|
\}
|
||||||
|
|
||||||
function! ale#handlers#ocamllsp#GetExecutable(buffer) abort
|
function! ale#handlers#ocamllsp#GetExecutable(buffer) abort
|
||||||
return 'ocamllsp'
|
return 'ocamllsp'
|
||||||
endfunction
|
endfunction
|
||||||
|
@ -13,7 +20,7 @@ function! ale#handlers#ocamllsp#GetCommand(buffer) abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#handlers#ocamllsp#GetLanguage(buffer) abort
|
function! ale#handlers#ocamllsp#GetLanguage(buffer) abort
|
||||||
return getbufvar(a:buffer, '&filetype')
|
return s:language_id_of_filetype[getbufvar(a:buffer, '&filetype')]
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#handlers#ocamllsp#GetProjectRoot(buffer) abort
|
function! ale#handlers#ocamllsp#GetProjectRoot(buffer) abort
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
function! ale#handlers#ols#GetExecutable(buffer) abort
|
function! ale#handlers#ols#GetExecutable(buffer) abort
|
||||||
let l:ols_setting = ale#handlers#ols#GetLanguage(a:buffer) . '_ols'
|
let l:ols_setting = ale#handlers#ols#GetLanguage(a:buffer) . '_ols'
|
||||||
|
|
||||||
return ale#node#FindExecutable(a:buffer, l:ols_setting, [
|
return ale#path#FindExecutable(a:buffer, l:ols_setting, [
|
||||||
\ 'node_modules/.bin/ocaml-language-server',
|
\ 'node_modules/.bin/ocaml-language-server',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -66,7 +66,7 @@ function! ale#handlers#solhint#FindConfig(buffer) abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#handlers#solhint#GetExecutable(buffer) abort
|
function! ale#handlers#solhint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'solidity_solhint', s:executables)
|
return ale#path#FindExecutable(a:buffer, 'solidity_solhint', s:executables)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" Given a buffer, return an appropriate working directory for solhint.
|
" Given a buffer, return an appropriate working directory for solhint.
|
||||||
|
@ -74,7 +74,7 @@ function! ale#handlers#solhint#GetCwd(buffer) abort
|
||||||
" If solhint is installed in a directory which contains the buffer, assume
|
" If solhint is installed in a directory which contains the buffer, assume
|
||||||
" it is the solhint project root. Otherwise, use nearest node_modules.
|
" it is the solhint project root. Otherwise, use nearest node_modules.
|
||||||
" Note: If node_modules not present yet, can't load local deps anyway.
|
" Note: If node_modules not present yet, can't load local deps anyway.
|
||||||
let l:executable = ale#node#FindNearestExecutable(a:buffer, s:executables)
|
let l:executable = ale#path#FindNearestExecutable(a:buffer, s:executables)
|
||||||
|
|
||||||
if !empty(l:executable)
|
if !empty(l:executable)
|
||||||
let l:nmi = strridx(l:executable, 'node_modules')
|
let l:nmi = strridx(l:executable, 'node_modules')
|
||||||
|
|
|
@ -6,7 +6,7 @@ call ale#Set('textlint_use_global', get(g:, 'ale_use_global_executables', 0))
|
||||||
call ale#Set('textlint_options', '')
|
call ale#Set('textlint_options', '')
|
||||||
|
|
||||||
function! ale#handlers#textlint#GetExecutable(buffer) abort
|
function! ale#handlers#textlint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'textlint', [
|
return ale#path#FindExecutable(a:buffer, 'textlint', [
|
||||||
\ 'node_modules/.bin/textlint',
|
\ 'node_modules/.bin/textlint',
|
||||||
\ 'node_modules/textlint/bin/textlint.js',
|
\ 'node_modules/textlint/bin/textlint.js',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -7,7 +7,7 @@ function! ale#handlers#tslint#InitVariables() abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#handlers#tslint#GetExecutable(buffer) abort
|
function! ale#handlers#tslint#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'typescript_tslint', [
|
return ale#path#FindExecutable(a:buffer, 'typescript_tslint', [
|
||||||
\ 'node_modules/.bin/tslint',
|
\ 'node_modules/.bin/tslint',
|
||||||
\])
|
\])
|
||||||
endfunction
|
endfunction
|
||||||
|
|
|
@ -11,7 +11,7 @@ endfunction
|
||||||
call ale#handlers#writegood#ResetOptions()
|
call ale#handlers#writegood#ResetOptions()
|
||||||
|
|
||||||
function! ale#handlers#writegood#GetExecutable(buffer) abort
|
function! ale#handlers#writegood#GetExecutable(buffer) abort
|
||||||
return ale#node#FindExecutable(a:buffer, 'writegood', [
|
return ale#path#FindExecutable(a:buffer, 'writegood', [
|
||||||
\ 'node_modules/.bin/write-good',
|
\ 'node_modules/.bin/write-good',
|
||||||
\ 'node_modules/write-good/bin/write-good.js',
|
\ 'node_modules/write-good/bin/write-good.js',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -9,7 +9,7 @@ call ale#Set('typescript_xo_options', '')
|
||||||
function! ale#handlers#xo#GetExecutable(buffer) abort
|
function! ale#handlers#xo#GetExecutable(buffer) abort
|
||||||
let l:type = ale#handlers#xo#GetType(a:buffer)
|
let l:type = ale#handlers#xo#GetType(a:buffer)
|
||||||
|
|
||||||
return ale#node#FindExecutable(a:buffer, l:type . '_xo', [
|
return ale#path#FindExecutable(a:buffer, l:type . '_xo', [
|
||||||
\ 'node_modules/xo/cli.js',
|
\ 'node_modules/xo/cli.js',
|
||||||
\ 'node_modules/.bin/xo',
|
\ 'node_modules/.bin/xo',
|
||||||
\])
|
\])
|
||||||
|
|
|
@ -41,7 +41,7 @@ let s:default_ale_linters = {
|
||||||
\ 'apkbuild': ['apkbuild_lint', 'secfixes_check'],
|
\ 'apkbuild': ['apkbuild_lint', 'secfixes_check'],
|
||||||
\ 'csh': ['shell'],
|
\ 'csh': ['shell'],
|
||||||
\ 'elixir': ['credo', 'dialyxir', 'dogma'],
|
\ 'elixir': ['credo', 'dialyxir', 'dogma'],
|
||||||
\ 'go': ['gofmt', 'golint', 'go vet'],
|
\ 'go': ['gofmt', 'golint', 'gopls', 'govet'],
|
||||||
\ 'hack': ['hack'],
|
\ 'hack': ['hack'],
|
||||||
\ 'help': [],
|
\ 'help': [],
|
||||||
\ 'inko': ['inko'],
|
\ 'inko': ['inko'],
|
||||||
|
|
|
@ -3,38 +3,6 @@
|
||||||
|
|
||||||
call ale#Set('windows_node_executable_path', 'node.exe')
|
call ale#Set('windows_node_executable_path', 'node.exe')
|
||||||
|
|
||||||
" Given a buffer number, a base variable name, and a list of paths to search
|
|
||||||
" for in ancestor directories, detect the executable path for a Node program.
|
|
||||||
"
|
|
||||||
" The use_global and executable options for the relevant program will be used.
|
|
||||||
function! ale#node#FindExecutable(buffer, base_var_name, path_list) abort
|
|
||||||
if ale#Var(a:buffer, a:base_var_name . '_use_global')
|
|
||||||
return ale#Var(a:buffer, a:base_var_name . '_executable')
|
|
||||||
endif
|
|
||||||
|
|
||||||
let l:nearest = ale#node#FindNearestExecutable(a:buffer, a:path_list)
|
|
||||||
|
|
||||||
if !empty(l:nearest)
|
|
||||||
return l:nearest
|
|
||||||
endif
|
|
||||||
|
|
||||||
return ale#Var(a:buffer, a:base_var_name . '_executable')
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Given a buffer number, a base variable name, and a list of paths to search
|
|
||||||
" for in ancestor directories, detect the executable path for a Node program.
|
|
||||||
function! ale#node#FindNearestExecutable(buffer, path_list) abort
|
|
||||||
for l:path in a:path_list
|
|
||||||
let l:executable = ale#path#FindNearestFile(a:buffer, l:path)
|
|
||||||
|
|
||||||
if !empty(l:executable)
|
|
||||||
return l:executable
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
|
|
||||||
return ''
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Create a executable string which executes a Node.js script command with a
|
" Create a executable string which executes a Node.js script command with a
|
||||||
" Node.js executable if needed.
|
" Node.js executable if needed.
|
||||||
"
|
"
|
||||||
|
|
|
@ -77,6 +77,42 @@ function! ale#path#ResolveLocalPath(buffer, search_string, global_fallback) abor
|
||||||
return l:path
|
return l:path
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
" Given a buffer number, a base variable name, and a list of paths to search
|
||||||
|
" for in ancestor directories, detect the executable path for a program.
|
||||||
|
function! ale#path#FindNearestExecutable(buffer, path_list) abort
|
||||||
|
for l:path in a:path_list
|
||||||
|
if ale#path#IsAbsolute(l:path)
|
||||||
|
let l:executable = filereadable(l:path) ? l:path : ''
|
||||||
|
else
|
||||||
|
let l:executable = ale#path#FindNearestFile(a:buffer, l:path)
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !empty(l:executable)
|
||||||
|
return l:executable
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
|
||||||
|
return ''
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
" Given a buffer number, a base variable name, and a list of paths to search
|
||||||
|
" for in ancestor directories, detect the executable path for a program.
|
||||||
|
"
|
||||||
|
" The use_global and executable options for the relevant program will be used.
|
||||||
|
function! ale#path#FindExecutable(buffer, base_var_name, path_list) abort
|
||||||
|
if ale#Var(a:buffer, a:base_var_name . '_use_global')
|
||||||
|
return ale#Var(a:buffer, a:base_var_name . '_executable')
|
||||||
|
endif
|
||||||
|
|
||||||
|
let l:nearest = ale#path#FindNearestExecutable(a:buffer, a:path_list)
|
||||||
|
|
||||||
|
if !empty(l:nearest)
|
||||||
|
return l:nearest
|
||||||
|
endif
|
||||||
|
|
||||||
|
return ale#Var(a:buffer, a:base_var_name . '_executable')
|
||||||
|
endfunction
|
||||||
|
|
||||||
" Return 1 if a path is an absolute path.
|
" Return 1 if a path is an absolute path.
|
||||||
function! ale#path#IsAbsolute(filename) abort
|
function! ale#path#IsAbsolute(filename) abort
|
||||||
if has('win32') && a:filename[:0] is# '\'
|
if has('win32') && a:filename[:0] is# '\'
|
||||||
|
|
|
@ -203,6 +203,27 @@ function! ale#sign#ParsePattern() abort
|
||||||
return l:pattern
|
return l:pattern
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
" Given a buffer number, return a List of placed signs [line, id, group]
|
||||||
|
function! ale#sign#ParseSignsWithGetPlaced(buffer) abort
|
||||||
|
let l:signs = sign_getplaced(a:buffer, { 'group': s:supports_sign_groups ? 'ale' : '' })[0].signs
|
||||||
|
let l:result = []
|
||||||
|
let l:is_dummy_sign_set = 0
|
||||||
|
|
||||||
|
for l:sign in l:signs
|
||||||
|
if l:sign['name'] is# 'ALEDummySign'
|
||||||
|
let l:is_dummy_sign_set = 1
|
||||||
|
else
|
||||||
|
call add(l:result, [
|
||||||
|
\ str2nr(l:sign['lnum']),
|
||||||
|
\ str2nr(l:sign['id']),
|
||||||
|
\ l:sign['name'],
|
||||||
|
\])
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
|
||||||
|
return [l:is_dummy_sign_set, l:result]
|
||||||
|
endfunction
|
||||||
|
|
||||||
" Given a list of lines for sign output, return a List of [line, id, group]
|
" Given a list of lines for sign output, return a List of [line, id, group]
|
||||||
function! ale#sign#ParseSigns(line_list) abort
|
function! ale#sign#ParseSigns(line_list) abort
|
||||||
let l:pattern =ale#sign#ParsePattern()
|
let l:pattern =ale#sign#ParsePattern()
|
||||||
|
@ -229,9 +250,13 @@ function! ale#sign#ParseSigns(line_list) abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! ale#sign#FindCurrentSigns(buffer) abort
|
function! ale#sign#FindCurrentSigns(buffer) abort
|
||||||
let l:line_list = ale#sign#ReadSigns(a:buffer)
|
if exists('*sign_getplaced')
|
||||||
|
return ale#sign#ParseSignsWithGetPlaced(a:buffer)
|
||||||
|
else
|
||||||
|
let l:line_list = ale#sign#ReadSigns(a:buffer)
|
||||||
|
|
||||||
return ale#sign#ParseSigns(l:line_list)
|
return ale#sign#ParseSigns(l:line_list)
|
||||||
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" Given a loclist, group the List into with one List per line.
|
" Given a loclist, group the List into with one List per line.
|
||||||
|
|
|
@ -20,8 +20,8 @@ the benefit of running a number of linters, more than ALE would by default,
|
||||||
while ensuring it doesn't run any linters known to be slow or resource
|
while ensuring it doesn't run any linters known to be slow or resource
|
||||||
intensive.
|
intensive.
|
||||||
|
|
||||||
g:ale_go_go_executable *g:ale_go_go_options*
|
g:ale_go_go_executable *g:ale_go_go_executable*
|
||||||
*b:ale_go_go_options*
|
*b:ale_go_go_executable*
|
||||||
|
|
||||||
Type: |String|
|
Type: |String|
|
||||||
Default: `'go'`
|
Default: `'go'`
|
||||||
|
@ -194,12 +194,30 @@ g:ale_go_gometalinter_lint_package *g:ale_go_gometalinter_lint_package*
|
||||||
===============================================================================
|
===============================================================================
|
||||||
gopls *ale-go-gopls*
|
gopls *ale-go-gopls*
|
||||||
|
|
||||||
|
gopls is the official Go language server, and is enabled for use with ALE by
|
||||||
|
default.
|
||||||
|
|
||||||
|
To install the latest stable version of `gopls` to your `$GOPATH`, try the
|
||||||
|
following command: >
|
||||||
|
|
||||||
|
GO111MODULE=on go get golang.org/x/tools/gopls@latest
|
||||||
|
<
|
||||||
|
If `$GOPATH` is readable by ALE, it should probably work without you having to
|
||||||
|
do anything else. See the `gopls` README file for more information:
|
||||||
|
|
||||||
|
https://github.com/golang/tools/blob/master/gopls/README.md
|
||||||
|
|
||||||
|
|
||||||
g:ale_go_gopls_executable *g:ale_go_gopls_executable*
|
g:ale_go_gopls_executable *g:ale_go_gopls_executable*
|
||||||
*b:ale_go_gopls_executable*
|
*b:ale_go_gopls_executable*
|
||||||
Type: |String|
|
Type: |String|
|
||||||
Default: `'gopls'`
|
Default: `'gopls'`
|
||||||
|
|
||||||
Location of the gopls binary file.
|
See |ale-integrations-local-executables|
|
||||||
|
|
||||||
|
ALE will search for `gopls` in locally installed directories first by
|
||||||
|
default, and fall back on a globally installed `gopls` if it can't be found
|
||||||
|
otherwise.
|
||||||
|
|
||||||
|
|
||||||
g:ale_go_gopls_options *g:ale_go_gopls_options*
|
g:ale_go_gopls_options *g:ale_go_gopls_options*
|
||||||
|
@ -229,6 +247,15 @@ g:ale_go_gopls_init_options *g:ale_go_gopls_init_options*
|
||||||
For a full list of supported analyzers, see:
|
For a full list of supported analyzers, see:
|
||||||
https://github.com/golang/tools/blob/master/gopls/doc/analyzers.md
|
https://github.com/golang/tools/blob/master/gopls/doc/analyzers.md
|
||||||
|
|
||||||
|
|
||||||
|
g:ale_go_gopls_use_global *g:ale_go_gopls_use_global*
|
||||||
|
*b:ale_go_gopls_use_global*
|
||||||
|
Type: |String|
|
||||||
|
Default: `get(g:, 'ale_use_global_executables', 0)`
|
||||||
|
|
||||||
|
See |ale-integrations-local-executables|
|
||||||
|
|
||||||
|
|
||||||
===============================================================================
|
===============================================================================
|
||||||
govet *ale-go-govet*
|
govet *ale-go-govet*
|
||||||
|
|
||||||
|
@ -262,6 +289,18 @@ g:ale_go_revive_options *g:ale_go_revive_options*
|
||||||
===============================================================================
|
===============================================================================
|
||||||
staticcheck *ale-go-staticcheck*
|
staticcheck *ale-go-staticcheck*
|
||||||
|
|
||||||
|
g:ale_go_staticcheck_executable *g:ale_go_staticcheck_executable*
|
||||||
|
*b:ale_go_staticcheck_executable*
|
||||||
|
Type: |String|
|
||||||
|
Default: `'staticcheck'`
|
||||||
|
|
||||||
|
See |ale-integrations-local-executables|
|
||||||
|
|
||||||
|
ALE will search for `staticcheck` in locally installed directories first by
|
||||||
|
default, and fall back on a globally installed `staticcheck` if it can't be
|
||||||
|
found otherwise.
|
||||||
|
|
||||||
|
|
||||||
g:ale_go_staticcheck_options *g:ale_go_staticcheck_options*
|
g:ale_go_staticcheck_options *g:ale_go_staticcheck_options*
|
||||||
*b:ale_go_staticcheck_options*
|
*b:ale_go_staticcheck_options*
|
||||||
Type: |String|
|
Type: |String|
|
||||||
|
@ -280,5 +319,13 @@ g:ale_go_staticcheck_lint_package *g:ale_go_staticcheck_lint_package*
|
||||||
current file.
|
current file.
|
||||||
|
|
||||||
|
|
||||||
|
g:ale_go_staticcheck_use_global *g:ale_go_staticcheck_use_global*
|
||||||
|
*b:ale_go_staticcheck_use_global*
|
||||||
|
Type: |String|
|
||||||
|
Default: `get(g:, 'ale_use_global_executables', 0)`
|
||||||
|
|
||||||
|
See |ale-integrations-local-executables|
|
||||||
|
|
||||||
|
|
||||||
===============================================================================
|
===============================================================================
|
||||||
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
|
||||||
|
|
|
@ -1580,7 +1580,7 @@ g:ale_linters *g:ale_linters*
|
||||||
\ 'apkbuild': ['apkbuild_lint', 'secfixes_check'],
|
\ 'apkbuild': ['apkbuild_lint', 'secfixes_check'],
|
||||||
\ 'csh': ['shell'],
|
\ 'csh': ['shell'],
|
||||||
\ 'elixir': ['credo', 'dialyxir', 'dogma'],
|
\ 'elixir': ['credo', 'dialyxir', 'dogma'],
|
||||||
\ 'go': ['gofmt', 'golint', 'go vet'],
|
\ 'go': ['gofmt', 'golint', 'gopls', 'govet'],
|
||||||
\ 'hack': ['hack'],
|
\ 'hack': ['hack'],
|
||||||
\ 'help': [],
|
\ 'help': [],
|
||||||
\ 'inko': ['inko'],
|
\ 'inko': ['inko'],
|
||||||
|
|
|
@ -192,7 +192,7 @@ formatting.
|
||||||
* [golangserver](https://github.com/sourcegraph/go-langserver) :warning:
|
* [golangserver](https://github.com/sourcegraph/go-langserver) :warning:
|
||||||
* [golint](https://godoc.org/github.com/golang/lint)
|
* [golint](https://godoc.org/github.com/golang/lint)
|
||||||
* [gometalinter](https://github.com/alecthomas/gometalinter) :warning: :floppy_disk:
|
* [gometalinter](https://github.com/alecthomas/gometalinter) :warning: :floppy_disk:
|
||||||
* [gopls](https://github.com/golang/go/wiki/gopls) :warning:
|
* [gopls](https://github.com/golang/go/wiki/gopls)
|
||||||
* [gosimple](https://github.com/dominikh/go-tools/tree/master/cmd/gosimple) :warning: :floppy_disk:
|
* [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:
|
* [gotype](https://godoc.org/golang.org/x/tools/cmd/gotype) :warning: :floppy_disk:
|
||||||
* [revive](https://github.com/mgechev/revive) :warning: :floppy_disk:
|
* [revive](https://github.com/mgechev/revive) :warning: :floppy_disk:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright (c) 2013-2020 itchyny
|
Copyright (c) 2013-2021 itchyny
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|
|
@ -11,44 +11,29 @@ https://github.com/itchyny/lightline.vim
|
||||||
|
|
||||||
![lightline.vim - wombat](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/wombat.png)
|
![lightline.vim - wombat](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/wombat.png)
|
||||||
|
|
||||||
### jellybeans
|
### solarized (`background=dark`)
|
||||||
|
|
||||||
![lightline.vim - jellybeans](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/jellybeans.png)
|
![lightline.vim - solarized_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_dark.png)
|
||||||
|
|
||||||
### solarized dark
|
### solarized (`background=light`)
|
||||||
|
|
||||||
![lightline.vim - solarized dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_dark.png)
|
![lightline.vim - solarized_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_light.png)
|
||||||
|
|
||||||
### solarized light
|
### PaperColor (`background=dark`)
|
||||||
|
|
||||||
![lightline.vim - solarized light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_light.png)
|
![lightline.vim - PaperColor_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_dark.png)
|
||||||
|
|
||||||
### PaperColor dark
|
### PaperColor (`background=light`)
|
||||||
|
|
||||||
![lightline.vim - PaperColor dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_dark.png)
|
![lightline.vim - PaperColor_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_light.png)
|
||||||
|
|
||||||
### PaperColor light
|
### one (`background=dark`)
|
||||||
|
|
||||||
![lightline.vim - PaperColor light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_light.png)
|
![lightline.vim - one_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_dark.png)
|
||||||
|
|
||||||
### seoul256
|
### one (`background=light`)
|
||||||
|
|
||||||
![lightline.vim - seoul256](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/seoul256.png)
|
|
||||||
|
|
||||||
### one dark
|
|
||||||
|
|
||||||
![lightline.vim - one dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_dark.png)
|
|
||||||
|
|
||||||
### one light
|
|
||||||
|
|
||||||
![lightline.vim - one light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_light.png)
|
|
||||||
|
|
||||||
### landscape
|
|
||||||
|
|
||||||
![lightline.vim - landscape](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/landscape.png)
|
|
||||||
|
|
||||||
landscape is my colorscheme, which is a high-contrast cterm-supported colorscheme, available at https://github.com/itchyny/landscape.vim
|
|
||||||
|
|
||||||
|
![lightline.vim - one_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_light.png)
|
||||||
|
|
||||||
For screenshots of all available colorshemes, see [this file](colorscheme.md).
|
For screenshots of all available colorshemes, see [this file](colorscheme.md).
|
||||||
|
|
||||||
|
|
|
@ -16,45 +16,45 @@
|
||||||
|
|
||||||
![lightline.vim - OldHope](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/OldHope.png)
|
![lightline.vim - OldHope](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/OldHope.png)
|
||||||
|
|
||||||
### PaperColor dark
|
### PaperColor (`background=dark`)
|
||||||
|
|
||||||
![lightline.vim - PaperColor dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_dark.png)
|
![lightline.vim - PaperColor_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_dark.png)
|
||||||
|
|
||||||
### PaperColor light
|
### PaperColor (`background=light`)
|
||||||
|
|
||||||
![lightline.vim - PaperColor light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_light.png)
|
![lightline.vim - PaperColor_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/PaperColor_light.png)
|
||||||
|
|
||||||
### Tomorrow
|
### Tomorrow
|
||||||
|
|
||||||
![lightline.vim - Tomorrow](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow.png)
|
![lightline.vim - Tomorrow](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow.png)
|
||||||
|
|
||||||
### Tomorrow Night
|
### Tomorrow_Night
|
||||||
|
|
||||||
![lightline.vim - Tomorrow Night](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night.png)
|
![lightline.vim - Tomorrow_Night](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night.png)
|
||||||
|
|
||||||
### Tomorrow Night Blue
|
### Tomorrow_Night_Blue
|
||||||
|
|
||||||
![lightline.vim - Tomorrow Night Blue](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night_Blue.png)
|
![lightline.vim_- Tomorrow_Night_Blue](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night_Blue.png)
|
||||||
|
|
||||||
### Tomorrow Night Bright
|
### Tomorrow_Night_Bright
|
||||||
|
|
||||||
![lightline.vim - Tomorrow Night Bright](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night_Bright.png)
|
![lightline.vim - Tomorrow_Night_Bright](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night_Bright.png)
|
||||||
|
|
||||||
### Tomorrow Night Eighties
|
### Tomorrow_Night_Eighties
|
||||||
|
|
||||||
![lightline.vim - Tomorrow Night Eighties](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night_Eighties.png)
|
![lightline.vim - Tomorrow_Night_Eighties](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/Tomorrow_Night_Eighties.png)
|
||||||
|
|
||||||
### ayu_mirage
|
### ayu_mirage
|
||||||
|
|
||||||
![lightline.vim - ayu mirage](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/ayu_mirage.png)
|
![lightline.vim - ayu_mirage](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/ayu_mirage.png)
|
||||||
|
|
||||||
### ayu_light
|
### ayu_light
|
||||||
|
|
||||||
![lightline.vim - ayu light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/ayu_light.png)
|
![lightline.vim - ayu_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/ayu_light.png)
|
||||||
|
|
||||||
### ayu_dark
|
### ayu_dark
|
||||||
|
|
||||||
![lightline.vim - ayu dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/ayu_dark.png)
|
![lightline.vim - ayu_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/ayu_dark.png)
|
||||||
|
|
||||||
### darcula
|
### darcula
|
||||||
|
|
||||||
|
@ -68,29 +68,29 @@
|
||||||
|
|
||||||
![lightline.vim - jellybeans](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/jellybeans.png)
|
![lightline.vim - jellybeans](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/jellybeans.png)
|
||||||
|
|
||||||
### selenized dark
|
### selenized_dark
|
||||||
|
|
||||||
![lightline.vim - selenized dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_dark.png)
|
![lightline.vim - selenized_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_dark.png)
|
||||||
|
|
||||||
### selenized black
|
### selenized_black
|
||||||
|
|
||||||
![lightline.vim - selenized black](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_black.png)
|
![lightline.vim - selenized_black](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_black.png)
|
||||||
|
|
||||||
### selenized light
|
### selenized_light
|
||||||
|
|
||||||
![lightline.vim - selenized light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_light.png)
|
![lightline.vim - selenized_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_light.png)
|
||||||
|
|
||||||
### selenized white
|
### selenized_white
|
||||||
|
|
||||||
![lightline.vim - selenized white](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_white.png)
|
![lightline.vim - selenized_white](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/selenized_white.png)
|
||||||
|
|
||||||
### solarized dark
|
### solarized (`background=dark`)
|
||||||
|
|
||||||
![lightline.vim - solarized dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_dark.png)
|
![lightline.vim - solarized_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_dark.png)
|
||||||
|
|
||||||
### solarized light
|
### solarized (`background=light`)
|
||||||
|
|
||||||
![lightline.vim - solarized light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_light.png)
|
![lightline.vim - solarized_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/solarized_light.png)
|
||||||
|
|
||||||
### materia
|
### materia
|
||||||
|
|
||||||
|
@ -112,13 +112,13 @@
|
||||||
|
|
||||||
![lightline.vim - seoul256](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/seoul256.png)
|
![lightline.vim - seoul256](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/seoul256.png)
|
||||||
|
|
||||||
### one dark
|
### one (`background=dark`)
|
||||||
|
|
||||||
![lightline.vim - one dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_dark.png)
|
![lightline.vim - one_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_dark.png)
|
||||||
|
|
||||||
### one light
|
### one (`background=light`)
|
||||||
|
|
||||||
![lightline.vim - one light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_light.png)
|
![lightline.vim - one_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/one_light.png)
|
||||||
|
|
||||||
### srcery_drk
|
### srcery_drk
|
||||||
|
|
||||||
|
@ -136,10 +136,10 @@
|
||||||
|
|
||||||
![lightline.vim - landscape](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/landscape.png)
|
![lightline.vim - landscape](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/landscape.png)
|
||||||
|
|
||||||
### 16color dark
|
### 16color (`background=dark`)
|
||||||
|
|
||||||
![lightline.vim - 16color dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/16color_dark.png)
|
![lightline.vim - 16color_dark](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/16color_dark.png)
|
||||||
|
|
||||||
### 16color light
|
### 16color (`background=light`)
|
||||||
|
|
||||||
![lightline.vim - 16color light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/16color_light.png)
|
![lightline.vim - 16color_light](https://raw.githubusercontent.com/wiki/itchyny/lightline.vim/image/16color_light.png)
|
||||||
|
|
|
@ -306,9 +306,6 @@ Exposed functions for lightline.vim.
|
||||||
lightline#update() *lightline#update()*
|
lightline#update() *lightline#update()*
|
||||||
Updates all the statuslines of existing windows.
|
Updates all the statuslines of existing windows.
|
||||||
|
|
||||||
lightline#update_once() *lightline#update_once()*
|
|
||||||
Updates the statuslines only once.
|
|
||||||
|
|
||||||
lightline#enable() *lightline#enable()*
|
lightline#enable() *lightline#enable()*
|
||||||
Enables |lightline|.
|
Enables |lightline|.
|
||||||
|
|
||||||
|
|
|
@ -6,12 +6,6 @@ if exists('g:autoloaded_fugitive')
|
||||||
endif
|
endif
|
||||||
let g:autoloaded_fugitive = 1
|
let g:autoloaded_fugitive = 1
|
||||||
|
|
||||||
if !exists('g:fugitive_git_executable')
|
|
||||||
let g:fugitive_git_executable = 'git'
|
|
||||||
elseif g:fugitive_git_executable =~# '^\w\+='
|
|
||||||
let g:fugitive_git_executable = 'env ' . g:fugitive_git_executable
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Section: Utility
|
" Section: Utility
|
||||||
|
|
||||||
function! s:function(name) abort
|
function! s:function(name) abort
|
||||||
|
@ -233,6 +227,41 @@ endfunction
|
||||||
|
|
||||||
" Section: Git
|
" Section: Git
|
||||||
|
|
||||||
|
function! s:GitCmd() abort
|
||||||
|
if !exists('g:fugitive_git_executable')
|
||||||
|
return ['git']
|
||||||
|
elseif type(g:fugitive_git_executable) == type([])
|
||||||
|
return g:fugitive_git_executable
|
||||||
|
else
|
||||||
|
let dquote = '"\%([^"]\|""\|\\"\)*"\|'
|
||||||
|
let string = g:fugitive_git_executable
|
||||||
|
let list = []
|
||||||
|
if string =~# '^\w\+='
|
||||||
|
call add(list, 'env')
|
||||||
|
endif
|
||||||
|
while string =~# '\S'
|
||||||
|
let arg = matchstr(string, '^\s*\%(' . dquote . '''[^'']*''\|\\.\|[^[:space:] |]\)\+')
|
||||||
|
let string = strpart(string, len(arg))
|
||||||
|
let arg = substitute(arg, '^\s\+', '', '')
|
||||||
|
let arg = substitute(arg,
|
||||||
|
\ '\(' . dquote . '''\%(''''\|[^'']\)*''\|\\[' . s:fnameescape . ']\|^\\[>+-]\|!\d*\)\|' . s:expand,
|
||||||
|
\ '\=submatch(0)[0] ==# "\\" ? submatch(0)[1] : submatch(0)[1:-2]', 'g')
|
||||||
|
call add(list, arg)
|
||||||
|
endwhile
|
||||||
|
return list
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
function! s:GitShellCmd() abort
|
||||||
|
if !exists('g:fugitive_git_executable')
|
||||||
|
return 'git'
|
||||||
|
elseif type(g:fugitive_git_executable) == type([])
|
||||||
|
return s:shellesc(g:fugitive_git_executable)
|
||||||
|
else
|
||||||
|
return g:fugitive_git_executable
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
function! s:UserCommandCwd(dir) abort
|
function! s:UserCommandCwd(dir) abort
|
||||||
let tree = s:Tree(a:dir)
|
let tree = s:Tree(a:dir)
|
||||||
return len(tree) ? FugitiveVimPath(tree) : getcwd()
|
return len(tree) ? FugitiveVimPath(tree) : getcwd()
|
||||||
|
@ -242,7 +271,13 @@ function! s:UserCommandList(...) abort
|
||||||
if !fugitive#GitVersion(1, 8, 5)
|
if !fugitive#GitVersion(1, 8, 5)
|
||||||
throw 'fugitive: Git 1.8.5 or higher required'
|
throw 'fugitive: Git 1.8.5 or higher required'
|
||||||
endif
|
endif
|
||||||
let git = split(get(g:, 'fugitive_git_command', g:fugitive_git_executable), '\s\+')
|
if !exists('g:fugitive_git_command')
|
||||||
|
let git = s:GitCmd()
|
||||||
|
elseif type(g:fugitive_git_command) == type([])
|
||||||
|
let git = g:fugitive_git_command
|
||||||
|
else
|
||||||
|
let git = split(g:fugitive_git_command, '\s\+')
|
||||||
|
endif
|
||||||
let flags = []
|
let flags = []
|
||||||
if a:0 && type(a:1) == type({})
|
if a:0 && type(a:1) == type({})
|
||||||
let git = copy(get(a:1, 'git', git))
|
let git = copy(get(a:1, 'git', git))
|
||||||
|
@ -270,13 +305,14 @@ endfunction
|
||||||
|
|
||||||
let s:git_versions = {}
|
let s:git_versions = {}
|
||||||
function! fugitive#GitVersion(...) abort
|
function! fugitive#GitVersion(...) abort
|
||||||
if !has_key(s:git_versions, g:fugitive_git_executable)
|
let git = s:GitShellCmd()
|
||||||
let s:git_versions[g:fugitive_git_executable] = matchstr(s:SystemError(g:fugitive_git_executable.' --version')[0], '\d[^[:space:]]\+')
|
if !has_key(s:git_versions, git)
|
||||||
|
let s:git_versions[git] = matchstr(s:SystemError(git.' --version')[0], '\d[^[:space:]]\+')
|
||||||
endif
|
endif
|
||||||
if !a:0
|
if !a:0
|
||||||
return s:git_versions[g:fugitive_git_executable]
|
return s:git_versions[git]
|
||||||
endif
|
endif
|
||||||
let components = split(s:git_versions[g:fugitive_git_executable], '\D\+')
|
let components = split(s:git_versions[git], '\D\+')
|
||||||
if empty(components)
|
if empty(components)
|
||||||
return -1
|
return -1
|
||||||
endif
|
endif
|
||||||
|
@ -368,7 +404,7 @@ function! fugitive#PrepareDirEnvGitArgv(...) abort
|
||||||
if !fugitive#GitVersion(1, 8, 5)
|
if !fugitive#GitVersion(1, 8, 5)
|
||||||
throw 'fugitive: Git 1.8.5 or higher required'
|
throw 'fugitive: Git 1.8.5 or higher required'
|
||||||
endif
|
endif
|
||||||
let git = split(g:fugitive_git_executable)
|
let git = s:GitCmd()
|
||||||
if a:0 && type(a:1) ==# type([])
|
if a:0 && type(a:1) ==# type([])
|
||||||
let cmd = a:000[1:-1] + a:1
|
let cmd = a:000[1:-1] + a:1
|
||||||
else
|
else
|
||||||
|
@ -587,9 +623,10 @@ let s:config = {}
|
||||||
function! fugitive#Config(...) abort
|
function! fugitive#Config(...) abort
|
||||||
let dir = s:Dir()
|
let dir = s:Dir()
|
||||||
let name = ''
|
let name = ''
|
||||||
|
let default = get(a:, 3, '')
|
||||||
if a:0 >= 2 && type(a:2) == type({})
|
if a:0 >= 2 && type(a:2) == type({})
|
||||||
let name = substitute(a:1, '^[^.]\+\|[^.]\+$', '\L&', 'g')
|
let name = substitute(a:1, '^[^.]\+\|[^.]\+$', '\L&', 'g')
|
||||||
return len(a:1) ? get(get(a:2, name, []), 0, '') : a:2
|
return len(a:1) ? get(get(a:2, name, []), 0, default) : a:2
|
||||||
elseif a:0 >= 2
|
elseif a:0 >= 2
|
||||||
let dir = a:2
|
let dir = a:2
|
||||||
let name = a:1
|
let name = a:1
|
||||||
|
@ -624,16 +661,16 @@ function! fugitive#Config(...) abort
|
||||||
let s:config[dir_key] = [s:ConfigTimestamps(dir, dict), dict]
|
let s:config[dir_key] = [s:ConfigTimestamps(dir, dict), dict]
|
||||||
lockvar! dict
|
lockvar! dict
|
||||||
endif
|
endif
|
||||||
return len(name) ? get(get(dict, name, []), 0, '') : dict
|
return len(name) ? get(get(dict, name, []), 0, default) : dict
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:Remote(dir) abort
|
function! s:Remote(dir) abort
|
||||||
let head = FugitiveHead(0, a:dir)
|
let head = FugitiveHead(0, a:dir)
|
||||||
let remote = len(head) ? fugitive#Config('branch.' . head . '.remote') : ''
|
let remote = len(head) ? FugitiveConfigGet('branch.' . head . '.remote', a:dir) : ''
|
||||||
let i = 10
|
let i = 10
|
||||||
while remote ==# '.' && i > 0
|
while remote ==# '.' && i > 0
|
||||||
let head = matchstr(fugitive#Config('branch.' . head . '.merge'), 'refs/heads/\zs.*')
|
let head = matchstr(FugitiveConfigGet('branch.' . head . '.merge', a:dir), 'refs/heads/\zs.*')
|
||||||
let remote = len(head) ? fugitive#Config('branch.' . head . '.remote') : ''
|
let remote = len(head) ? FugitiveConfigGet('branch.' . head . '.remote', a:dir) : ''
|
||||||
let i -= 1
|
let i -= 1
|
||||||
endwhile
|
endwhile
|
||||||
return remote =~# '^\.\=$' ? 'origin' : remote
|
return remote =~# '^\.\=$' ? 'origin' : remote
|
||||||
|
@ -845,7 +882,7 @@ function! s:repo_prepare(...) dict abort
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:repo_git_command(...) dict abort
|
function! s:repo_git_command(...) dict abort
|
||||||
let git = g:fugitive_git_executable . ' --git-dir='.s:shellesc(self.git_dir)
|
let git = s:GitShellCmd() . ' --git-dir='.s:shellesc(self.git_dir)
|
||||||
return git.join(map(copy(a:000),'" ".s:shellesc(v:val)'),'')
|
return git.join(map(copy(a:000),'" ".s:shellesc(v:val)'),'')
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
@ -870,7 +907,7 @@ endfunction
|
||||||
call s:add_methods('repo',['superglob'])
|
call s:add_methods('repo',['superglob'])
|
||||||
|
|
||||||
function! s:repo_config(name) dict abort
|
function! s:repo_config(name) dict abort
|
||||||
return fugitive#Config(a:name, self.git_dir)
|
return FugitiveConfigGet(a:name, self.git_dir)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! s:repo_user() dict abort
|
function! s:repo_user() dict abort
|
||||||
|
@ -1975,9 +2012,9 @@ function! fugitive#BufReadStatus() abort
|
||||||
|
|
||||||
let pull_type = 'Pull'
|
let pull_type = 'Pull'
|
||||||
if len(pull)
|
if len(pull)
|
||||||
let rebase = fugitive#Config('branch.' . branch . '.rebase', config)
|
let rebase = FugitiveConfigGet('branch.' . branch . '.rebase', config)
|
||||||
if empty(rebase)
|
if empty(rebase)
|
||||||
let rebase = fugitive#Config('pull.rebase', config)
|
let rebase = FugitiveConfigGet('pull.rebase', config)
|
||||||
endif
|
endif
|
||||||
if rebase =~# '^\%(true\|yes\|on\|1\|interactive\|merges\|preserve\)$'
|
if rebase =~# '^\%(true\|yes\|on\|1\|interactive\|merges\|preserve\)$'
|
||||||
let pull_type = 'Rebase'
|
let pull_type = 'Rebase'
|
||||||
|
@ -1986,11 +2023,11 @@ function! fugitive#BufReadStatus() abort
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let push_remote = fugitive#Config('branch.' . branch . '.pushRemote', config)
|
let push_remote = FugitiveConfigGet('branch.' . branch . '.pushRemote', config)
|
||||||
if empty(push_remote)
|
if empty(push_remote)
|
||||||
let push_remote = fugitive#Config('remote.pushDefault', config)
|
let push_remote = FugitiveConfigGet('remote.pushDefault', config)
|
||||||
endif
|
endif
|
||||||
let fetch_remote = fugitive#Config('branch.' . branch . '.remote', config)
|
let fetch_remote = FugitiveConfigGet('branch.' . branch . '.remote', config)
|
||||||
if empty(fetch_remote)
|
if empty(fetch_remote)
|
||||||
let fetch_remote = 'origin'
|
let fetch_remote = 'origin'
|
||||||
endif
|
endif
|
||||||
|
@ -1998,7 +2035,7 @@ function! fugitive#BufReadStatus() abort
|
||||||
let push_remote = fetch_remote
|
let push_remote = fetch_remote
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let push_default = fugitive#Config('push.default')
|
let push_default = FugitiveConfigGet('push.default', config)
|
||||||
if empty(push_default)
|
if empty(push_default)
|
||||||
let push_default = fugitive#GitVersion(2) ? 'simple' : 'matching'
|
let push_default = fugitive#GitVersion(2) ? 'simple' : 'matching'
|
||||||
endif
|
endif
|
||||||
|
@ -2095,7 +2132,7 @@ function! fugitive#BufReadStatus() abort
|
||||||
if &bufhidden ==# ''
|
if &bufhidden ==# ''
|
||||||
setlocal bufhidden=delete
|
setlocal bufhidden=delete
|
||||||
endif
|
endif
|
||||||
let b:dispatch = '-dir=' . fnameescape(len(s:Tree()) ? s:Tree() : s:Dir()) . ' ' . g:fugitive_git_executable . ' fetch --all'
|
let b:dispatch = '-dir=' . fnameescape(len(s:Tree()) ? s:Tree() : s:Dir()) . ' ' . s:GitShellCmd() . ' fetch --all'
|
||||||
call fugitive#MapJumps()
|
call fugitive#MapJumps()
|
||||||
call s:Map('n', '-', ":<C-U>execute <SID>Do('Toggle',0)<CR>", '<silent>')
|
call s:Map('n', '-', ":<C-U>execute <SID>Do('Toggle',0)<CR>", '<silent>')
|
||||||
call s:Map('x', '-', ":<C-U>execute <SID>Do('Toggle',1)<CR>", '<silent>')
|
call s:Map('x', '-', ":<C-U>execute <SID>Do('Toggle',1)<CR>", '<silent>')
|
||||||
|
@ -2261,8 +2298,8 @@ function! fugitive#BufReadCmd(...) abort
|
||||||
setlocal endofline
|
setlocal endofline
|
||||||
|
|
||||||
try
|
try
|
||||||
if &foldmethod ==# 'marker' && b:fugitive_type !=# 'blob'
|
if b:fugitive_type !=# 'blob'
|
||||||
setlocal foldmethod=manual
|
setlocal foldmarker=<<<<<<<<,>>>>>>>>
|
||||||
endif
|
endif
|
||||||
silent exe s:DoAutocmd('BufReadPre')
|
silent exe s:DoAutocmd('BufReadPre')
|
||||||
if b:fugitive_type ==# 'tree'
|
if b:fugitive_type ==# 'tree'
|
||||||
|
@ -2405,7 +2442,7 @@ function! s:TempReadPost(file) abort
|
||||||
if has_key(dict, 'filetype')
|
if has_key(dict, 'filetype')
|
||||||
let &l:filetype = dict.filetype
|
let &l:filetype = dict.filetype
|
||||||
endif
|
endif
|
||||||
setlocal foldmarker=<<<<<<<,>>>>>>>
|
setlocal foldmarker=<<<<<<<<,>>>>>>>>
|
||||||
if !&modifiable
|
if !&modifiable
|
||||||
if empty(mapcheck('q', 'n'))
|
if empty(mapcheck('q', 'n'))
|
||||||
nnoremap <buffer> <silent> q :<C-U>echoerr "fugitive: q is removed in favor of gq (or :q)"<CR>
|
nnoremap <buffer> <silent> q :<C-U>echoerr "fugitive: q is removed in favor of gq (or :q)"<CR>
|
||||||
|
@ -2626,7 +2663,7 @@ function! s:RunTick(job) abort
|
||||||
if type(a:job) == v:t_number
|
if type(a:job) == v:t_number
|
||||||
return jobwait([a:job], 1)[0] == -1
|
return jobwait([a:job], 1)[0] == -1
|
||||||
elseif type(a:job) == 8
|
elseif type(a:job) == 8
|
||||||
let running = ch_status(a:job) !=# 'closed' || job_status(a:job) ==# 'run'
|
let running = ch_status(a:job) !~# '^closed$\|^failed$' || job_status(a:job) ==# 'run'
|
||||||
sleep 1m
|
sleep 1m
|
||||||
return running
|
return running
|
||||||
endif
|
endif
|
||||||
|
@ -2815,14 +2852,14 @@ function! fugitive#Command(line1, line2, range, bang, mods, arg) abort
|
||||||
let cmd = s:StatusCommand(a:line1, a:line2, a:range, a:line2, a:bang, a:mods, '', '', [])
|
let cmd = s:StatusCommand(a:line1, a:line2, a:range, a:line2, a:bang, a:mods, '', '', [])
|
||||||
return (empty(cmd) ? 'exe' : cmd) . after
|
return (empty(cmd) ? 'exe' : cmd) . after
|
||||||
endif
|
endif
|
||||||
let alias = fugitive#Config('alias.' . get(args, 0, ''), config)
|
let alias = FugitiveConfigGet('alias.' . get(args, 0, ''), config)
|
||||||
if get(args, 1, '') !=# '--help' && alias !~# '^$\|^!\|[\"'']' && !filereadable(s:ExecPath() . '/git-' . args[0])
|
if get(args, 1, '') !=# '--help' && alias !~# '^$\|^!\|[\"'']' && !filereadable(s:ExecPath() . '/git-' . args[0])
|
||||||
\ && !(has('win32') && filereadable(s:ExecPath() . '/git-' . args[0] . '.exe'))
|
\ && !(has('win32') && filereadable(s:ExecPath() . '/git-' . args[0] . '.exe'))
|
||||||
call remove(args, 0)
|
call remove(args, 0)
|
||||||
call extend(args, split(alias, '\s\+'), 'keep')
|
call extend(args, split(alias, '\s\+'), 'keep')
|
||||||
endif
|
endif
|
||||||
let name = substitute(get(args, 0, ''), '\%(^\|-\)\(\l\)', '\u\1', 'g')
|
let name = substitute(get(args, 0, ''), '\%(^\|-\)\(\l\)', '\u\1', 'g')
|
||||||
let git = split(get(g:, 'fugitive_git_command', g:fugitive_git_executable), '\s\+')
|
let git = s:UserCommandList()
|
||||||
let options = {'git': git, 'dir': dir, 'flags': flags}
|
let options = {'git': git, 'dir': dir, 'flags': flags}
|
||||||
if pager is# -1 && exists('*s:' . name . 'Subcommand') && get(args, 1, '') !=# '--help'
|
if pager is# -1 && exists('*s:' . name . 'Subcommand') && get(args, 1, '') !=# '--help'
|
||||||
try
|
try
|
||||||
|
@ -2981,10 +3018,11 @@ endfunction
|
||||||
|
|
||||||
let s:exec_paths = {}
|
let s:exec_paths = {}
|
||||||
function! s:ExecPath() abort
|
function! s:ExecPath() abort
|
||||||
if !has_key(s:exec_paths, g:fugitive_git_executable)
|
let git = s:GitShellCmd()
|
||||||
let s:exec_paths[g:fugitive_git_executable] = s:sub(system(g:fugitive_git_executable.' --exec-path'),'\n$','')
|
if !has_key(s:exec_paths, git)
|
||||||
|
let s:exec_paths[git] = s:sub(system(git.' --exec-path'),'\n$','')
|
||||||
endif
|
endif
|
||||||
return s:exec_paths[g:fugitive_git_executable]
|
return s:exec_paths[git]
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
let s:subcommands_before_2_5 = [
|
let s:subcommands_before_2_5 = [
|
||||||
|
@ -3026,7 +3064,7 @@ function! s:CompletableSubcommands(dir) abort
|
||||||
endif
|
endif
|
||||||
call extend(commands, s:path_subcommands[cpath])
|
call extend(commands, s:path_subcommands[cpath])
|
||||||
endfor
|
endfor
|
||||||
call extend(commands, map(filter(keys(fugitive#Config(a:dir)), 'v:val =~# "^alias\\.[^.]*$"'), 'strpart(v:val, 6)'))
|
call extend(commands, keys(FugitiveConfigGetRegexp('^alias\.\zs[^.]\+$', a:dir)))
|
||||||
let configured = split(FugitiveConfigGet('completion.commands', a:dir), '\s\+')
|
let configured = split(FugitiveConfigGet('completion.commands', a:dir), '\s\+')
|
||||||
let rejected = {}
|
let rejected = {}
|
||||||
for command in configured
|
for command in configured
|
||||||
|
@ -3101,7 +3139,7 @@ function! s:StatusCommand(line1, line2, range, count, bang, mods, reg, arg, args
|
||||||
try
|
try
|
||||||
let mods = s:Mods(a:mods, &splitbelow ? 'botright' : 'topleft')
|
let mods = s:Mods(a:mods, &splitbelow ? 'botright' : 'topleft')
|
||||||
let file = fugitive#Find(':', dir)
|
let file = fugitive#Find(':', dir)
|
||||||
let arg = ' +let\ w:fugitive_status=FugitiveGitDir() ' .
|
let arg = ' +setl\ foldmarker=<<<<<<<<,>>>>>>>>\|let\ w:fugitive_status=FugitiveGitDir() ' .
|
||||||
\ s:fnameescape(file)
|
\ s:fnameescape(file)
|
||||||
for tabnr in [tabpagenr()] + (mods =~# '\<tab\>' ? range(1, tabpagenr('$')) : [])
|
for tabnr in [tabpagenr()] + (mods =~# '\<tab\>' ? range(1, tabpagenr('$')) : [])
|
||||||
let bufs = tabpagebuflist(tabnr)
|
let bufs = tabpagebuflist(tabnr)
|
||||||
|
@ -4457,10 +4495,7 @@ function! s:ToolStream(line1, line2, range, bang, mods, options, args, state) ab
|
||||||
let a:state.mode = 'init'
|
let a:state.mode = 'init'
|
||||||
let a:state.from = ''
|
let a:state.from = ''
|
||||||
let a:state.to = ''
|
let a:state.to = ''
|
||||||
let exec = s:UserCommandList({'git': a:options.git, 'dir': a:options.dir})
|
let exec = s:UserCommandList({'git': a:options.git, 'dir': a:options.dir}) + ['-c', 'diff.context=0']
|
||||||
if !s:HasOpt(argv, '--name-status') && !prompt
|
|
||||||
let exec += ['-c', 'diff.context=0']
|
|
||||||
endif
|
|
||||||
let exec += a:options.flags + ['--no-pager', 'diff', '--no-ext-diff', '--no-color', '--no-prefix'] + argv
|
let exec += a:options.flags + ['--no-pager', 'diff', '--no-ext-diff', '--no-color', '--no-prefix'] + argv
|
||||||
if prompt
|
if prompt
|
||||||
let title = ':Git ' . s:fnameescape(a:options.flags + [a:options.subcommand] + a:options.subcommand_args)
|
let title = ':Git ' . s:fnameescape(a:options.flags + [a:options.subcommand] + a:options.subcommand_args)
|
||||||
|
@ -5570,9 +5605,9 @@ endfunction
|
||||||
function! s:Keywordprg() abort
|
function! s:Keywordprg() abort
|
||||||
let args = ' --git-dir='.escape(s:Dir(),"\\\"' ")
|
let args = ' --git-dir='.escape(s:Dir(),"\\\"' ")
|
||||||
if has('gui_running') && !has('win32')
|
if has('gui_running') && !has('win32')
|
||||||
return g:fugitive_git_executable . ' --no-pager' . args . ' log -1'
|
return s:GitShellCmd() . ' --no-pager' . args . ' log -1'
|
||||||
else
|
else
|
||||||
return g:fugitive_git_executable . args . ' show'
|
return s:GitShellCmd() . args . ' show'
|
||||||
endif
|
endif
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
@ -6069,7 +6104,7 @@ function! fugitive#BlameFileType() abort
|
||||||
call s:Map('n', '<F1>', ':help :Git_blame<CR>', '<silent>')
|
call s:Map('n', '<F1>', ':help :Git_blame<CR>', '<silent>')
|
||||||
call s:Map('n', 'g?', ':help :Git_blame<CR>', '<silent>')
|
call s:Map('n', 'g?', ':help :Git_blame<CR>', '<silent>')
|
||||||
if mapcheck('q', 'n') =~# '^$\|bdelete'
|
if mapcheck('q', 'n') =~# '^$\|bdelete'
|
||||||
call s:Map('n', 'q', 'echoerr "fugitive: q removed in favor of gq (or :q)"<CR>', '<silent>')
|
call s:Map('n', 'q', ':echoerr "fugitive: q removed in favor of gq (or :q)"<CR>', '<silent>')
|
||||||
endif
|
endif
|
||||||
call s:Map('n', 'gq', ':exe <SID>BlameQuit()<CR>', '<silent>')
|
call s:Map('n', 'gq', ':exe <SID>BlameQuit()<CR>', '<silent>')
|
||||||
call s:Map('n', '<2-LeftMouse>', ':<C-U>exe <SID>BlameCommit("exe <SID>BlameLeave()<Bar>edit")<CR>', '<silent>')
|
call s:Map('n', '<2-LeftMouse>', ':<C-U>exe <SID>BlameCommit("exe <SID>BlameLeave()<Bar>edit")<CR>', '<silent>')
|
||||||
|
@ -6251,9 +6286,15 @@ function! fugitive#BrowseCommand(line1, count, range, bang, mods, arg, args) abo
|
||||||
let remote = r
|
let remote = r
|
||||||
endif
|
endif
|
||||||
if r ==# '.' || r ==# remote
|
if r ==# '.' || r ==# remote
|
||||||
let merge = m
|
let remote_ref = 'refs/remotes/' . remote . '/' . branch
|
||||||
if path =~# '^\.git/refs/heads/.'
|
if FugitiveConfigGet('push.default', dir) ==# 'upstream' ||
|
||||||
let path = '.git/refs/heads/'.merge
|
\ !filereadable(FugitiveFind('.git/' . remote_ref, dir)) && s:ChompError(['rev-parse', '--verify', remote_ref, '--'], dir)[1]
|
||||||
|
let merge = m
|
||||||
|
if path =~# '^\.git/refs/heads/.'
|
||||||
|
let path = '.git/refs/heads/'.merge
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
let merge = branch
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
@ -6368,7 +6409,7 @@ function! s:SquashArgument(...) abort
|
||||||
if &filetype == 'fugitive'
|
if &filetype == 'fugitive'
|
||||||
let commit = matchstr(getline('.'), '^\%(\%(\x\x\x\)\@!\l\+\s\+\)\=\zs[0-9a-f]\{4,\}\ze \|^' . s:ref_header . ': \zs\S\+')
|
let commit = matchstr(getline('.'), '^\%(\%(\x\x\x\)\@!\l\+\s\+\)\=\zs[0-9a-f]\{4,\}\ze \|^' . s:ref_header . ': \zs\S\+')
|
||||||
elseif has_key(s:temp_files, s:cpath(expand('%:p')))
|
elseif has_key(s:temp_files, s:cpath(expand('%:p')))
|
||||||
let commit = matchstr(getline('.'), '\<\x\{4,\}\>')
|
let commit = matchstr(getline('.'), '\S\@<!\x\{4,\}\>')
|
||||||
else
|
else
|
||||||
let commit = s:Owner(@%)
|
let commit = s:Owner(@%)
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -128,8 +128,8 @@ endfunction
|
||||||
" structure of the return value as it is not guaranteed. If you want a full
|
" structure of the return value as it is not guaranteed. If you want a full
|
||||||
" dictionary of every config value, use FugitiveConfigGetRegexp('.*').
|
" dictionary of every config value, use FugitiveConfigGetRegexp('.*').
|
||||||
function! FugitiveConfig(...) abort
|
function! FugitiveConfig(...) abort
|
||||||
if a:0 == 2 && (type(a:2) != type({}) || has_key(a:2, 'git_dir'))
|
if a:0 >= 2 && (type(a:2) != type({}) || has_key(a:2, 'git_dir'))
|
||||||
return fugitive#Config(a:1, FugitiveGitDir(a:2))
|
return call('fugitive#Config', [a:1, FugitiveGitDir(a:2)] + a:000[2:-1])
|
||||||
elseif a:0 == 1 && (type(a:1) !=# type('') || a:1 !~# '^[[:alnum:]-]\+\.')
|
elseif a:0 == 1 && (type(a:1) !=# type('') || a:1 !~# '^[[:alnum:]-]\+\.')
|
||||||
return fugitive#Config(FugitiveGitDir(a:1))
|
return fugitive#Config(FugitiveGitDir(a:1))
|
||||||
else
|
else
|
||||||
|
|
|
@ -26,7 +26,7 @@ syn match fugitiveSymbolicRef /\.\@!\%(\.\.\@!\|[^[:space:][:cntrl:]\:.]\)\+\.\@
|
||||||
syn match fugitiveHash /^\x\{4,\}\S\@!/ contained containedin=@fugitiveSection
|
syn match fugitiveHash /^\x\{4,\}\S\@!/ contained containedin=@fugitiveSection
|
||||||
syn match fugitiveHash /\S\@<!\x\{4,\}\S\@!/ contained
|
syn match fugitiveHash /\S\@<!\x\{4,\}\S\@!/ contained
|
||||||
|
|
||||||
syn region fugitiveHunk start=/^\%(@@\+ -\)\@=/ end=/^\%([A-Za-z?@]\|$\)\@=/ contains=@fugitiveDiff containedin=@fugitiveSection fold
|
syn region fugitiveHunk start=/^\%(@@\+ -\)\@=/ end=/^\%([A-Za-z?@]\|$\)\@=/ contains=diffLine,diffRemoved,diffAdded,diffNoEOL containedin=@fugitiveSection fold
|
||||||
|
|
||||||
for s:section in ['Untracked', 'Unstaged', 'Staged']
|
for s:section in ['Untracked', 'Unstaged', 'Staged']
|
||||||
exe 'syn region fugitive' . s:section . 'Section start=/^\%(' . s:section . ' .*(\d\+)$\)\@=/ contains=fugitive' . s:section . 'Heading end=/^$/'
|
exe 'syn region fugitive' . s:section . 'Section start=/^\%(' . s:section . ' .*(\d\+)$\)\@=/ contains=fugitive' . s:section . 'Heading end=/^$/'
|
||||||
|
|
|
@ -172,14 +172,24 @@ Commands for operating on a hunk:~
|
||||||
|
|
||||||
*gitgutter-:GitGutterPreviewHunk*
|
*gitgutter-:GitGutterPreviewHunk*
|
||||||
:GitGutterPreviewHunk Preview the hunk the cursor is in.
|
:GitGutterPreviewHunk Preview the hunk the cursor is in.
|
||||||
Use |:pclose| or |CTRL-W_CTRL-Z| to close the preview
|
|
||||||
window, or set |g:gitgutter_close_preview_on_escape|
|
|
||||||
and use <Esc>.
|
|
||||||
|
|
||||||
To stage part of the hunk, move to the preview window,
|
To stage part of the hunk, move to the preview window,
|
||||||
delete any lines you do not want to stage, and
|
delete any lines you do not want to stage, and
|
||||||
|GitGutterStageHunk|.
|
|GitGutterStageHunk|.
|
||||||
|
|
||||||
|
To close a non-floating preview window use |:pclose|
|
||||||
|
or |CTRL-W_z| or |CTRL-W_CTRL-Z|; or normal window-
|
||||||
|
closing (|:quit| or |:close| or |CTRL-W_c|) if your cursor
|
||||||
|
is in the preview window.
|
||||||
|
|
||||||
|
To close a floating window when the cursor is in the
|
||||||
|
original buffer, move the cursor.
|
||||||
|
|
||||||
|
To close a floating window when the cursor is in the
|
||||||
|
floating window use normal window-closing, or move to
|
||||||
|
the original window with |CTRL-W_p|. Alternatively set
|
||||||
|
|g:gitgutter_close_preview_on_escape| and use <Esc>.
|
||||||
|
|
||||||
Commands for folds:~
|
Commands for folds:~
|
||||||
|
|
||||||
*gitgutter-:GitGutterFold*
|
*gitgutter-:GitGutterFold*
|
||||||
|
|
|
@ -54,7 +54,7 @@ syntax match jsModuleComma contained /,/ skipwhite skipempty nextgroup=
|
||||||
syntax region jsString start=+\z(["']\)+ skip=+\\\%(\z1\|$\)+ end=+\z1+ end=+$+ contains=jsSpecial extend
|
syntax region jsString start=+\z(["']\)+ skip=+\\\%(\z1\|$\)+ end=+\z1+ end=+$+ contains=jsSpecial extend
|
||||||
syntax region jsTemplateString start=+`+ skip=+\\`+ end=+`+ contains=jsTemplateExpression,jsSpecial extend
|
syntax region jsTemplateString start=+`+ skip=+\\`+ end=+`+ contains=jsTemplateExpression,jsSpecial extend
|
||||||
syntax match jsTaggedTemplate /\<\K\k*\ze`/ nextgroup=jsTemplateString
|
syntax match jsTaggedTemplate /\<\K\k*\ze`/ nextgroup=jsTemplateString
|
||||||
syntax match jsNumber /\c\<\%(\d\+\%(e[+-]\=\d\+\)\=\|0b[01]\+\|0o\o\+\|0x\%(\x\|_\)\+\)\>/
|
syntax match jsNumber /\c\<\%(\d\+\%(e[+-]\=\d\+\)\=\|0b[01]\+\|0o\o\+\|0x\%(\x\|_\)\+\)n\=\>/
|
||||||
syntax keyword jsNumber Infinity
|
syntax keyword jsNumber Infinity
|
||||||
syntax match jsFloat /\c\<\%(\d\+\.\d\+\|\d\+\.\|\.\d\+\)\%(e[+-]\=\d\+\)\=\>/
|
syntax match jsFloat /\c\<\%(\d\+\.\d\+\|\d\+\.\|\.\d\+\)\%(e[+-]\=\d\+\)\=\>/
|
||||||
|
|
||||||
|
@ -110,7 +110,7 @@ syntax keyword jsAsyncKeyword async await
|
||||||
syntax match jsSwitchColon contained /::\@!/ skipwhite skipempty nextgroup=jsSwitchBlock
|
syntax match jsSwitchColon contained /::\@!/ skipwhite skipempty nextgroup=jsSwitchBlock
|
||||||
|
|
||||||
" Keywords
|
" Keywords
|
||||||
syntax keyword jsGlobalObjects ArrayBuffer Array BigInt64Array BigUint64Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray Boolean Buffer Collator DataView Date DateTimeFormat Function Intl Iterator JSON Map Set WeakMap WeakSet Math Number NumberFormat Object ParallelArray Promise Proxy Reflect RegExp String Symbol Uint8ClampedArray WebAssembly console document fetch window
|
syntax keyword jsGlobalObjects ArrayBuffer Array BigInt BigInt64Array BigUint64Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray Boolean Buffer Collator DataView Date DateTimeFormat Function Intl Iterator JSON Map Set WeakMap WeakRef WeakSet Math Number NumberFormat Object ParallelArray Promise Proxy Reflect RegExp String Symbol Uint8ClampedArray WebAssembly console document fetch window
|
||||||
syntax keyword jsGlobalNodeObjects module exports global process __dirname __filename
|
syntax keyword jsGlobalNodeObjects module exports global process __dirname __filename
|
||||||
syntax match jsGlobalNodeObjects /\<require\>/ containedin=jsFuncCall
|
syntax match jsGlobalNodeObjects /\<require\>/ containedin=jsFuncCall
|
||||||
syntax keyword jsExceptions Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError
|
syntax keyword jsExceptions Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError
|
||||||
|
|
Loading…
Reference in a new issue