diff --git a/ale_linters/ada/gitleaks.vim b/ale_linters/ada/gitleaks.vim new file mode 100644 index 0000000000..b21f6583c6 --- /dev/null +++ b/ale_linters/ada/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Ada files. + +call ale#handlers#gitleaks#DefineLinter('ada') diff --git a/ale_linters/ansible/gitleaks.vim b/ale_linters/ansible/gitleaks.vim new file mode 100644 index 0000000000..0dd2535246 --- /dev/null +++ b/ale_linters/ansible/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for ansible files. + +call ale#handlers#gitleaks#DefineLinter('ansible') diff --git a/ale_linters/asciidoc/gitleaks.vim b/ale_linters/asciidoc/gitleaks.vim new file mode 100644 index 0000000000..47791faf50 --- /dev/null +++ b/ale_linters/asciidoc/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for ASCIIDoc files. + +call ale#handlers#gitleaks#DefineLinter('asciidoc') diff --git a/ale_linters/c/gitleaks.vim b/ale_linters/c/gitleaks.vim new file mode 100644 index 0000000000..c20dbed93e --- /dev/null +++ b/ale_linters/c/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for C files. + +call ale#handlers#gitleaks#DefineLinter('c') diff --git a/ale_linters/cpp/gitleaks.vim b/ale_linters/cpp/gitleaks.vim new file mode 100644 index 0000000000..1e2f8d3c3f --- /dev/null +++ b/ale_linters/cpp/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for C++ files. + +call ale#handlers#gitleaks#DefineLinter('cpp') diff --git a/ale_linters/cs/gitleaks.vim b/ale_linters/cs/gitleaks.vim new file mode 100644 index 0000000000..a3cdea1b11 --- /dev/null +++ b/ale_linters/cs/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for C# files. + +call ale#handlers#gitleaks#DefineLinter('cs') diff --git a/ale_linters/css/gitleaks.vim b/ale_linters/css/gitleaks.vim new file mode 100644 index 0000000000..0aee1fbfb4 --- /dev/null +++ b/ale_linters/css/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for CSS files. + +call ale#handlers#gitleaks#DefineLinter('css') diff --git a/ale_linters/dockerfile/gitleaks.vim b/ale_linters/dockerfile/gitleaks.vim new file mode 100644 index 0000000000..c7610b6e7e --- /dev/null +++ b/ale_linters/dockerfile/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Dockerfiles. + +call ale#handlers#gitleaks#DefineLinter('dockerfile') diff --git a/ale_linters/elixir/gitleaks.vim b/ale_linters/elixir/gitleaks.vim new file mode 100644 index 0000000000..f0a178772d --- /dev/null +++ b/ale_linters/elixir/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Elixir files. + +call ale#handlers#gitleaks#DefineLinter('elixir') diff --git a/ale_linters/go/gitleaks.vim b/ale_linters/go/gitleaks.vim new file mode 100644 index 0000000000..7554ddf52c --- /dev/null +++ b/ale_linters/go/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Go files. + +call ale#handlers#gitleaks#DefineLinter('go') diff --git a/ale_linters/haskell/gitleaks.vim b/ale_linters/haskell/gitleaks.vim new file mode 100644 index 0000000000..6388309f7e --- /dev/null +++ b/ale_linters/haskell/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Haskell files. + +call ale#handlers#gitleaks#DefineLinter('haskell') diff --git a/ale_linters/html/gitleaks.vim b/ale_linters/html/gitleaks.vim new file mode 100644 index 0000000000..cfe72f84bc --- /dev/null +++ b/ale_linters/html/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for HTML files. + +call ale#handlers#gitleaks#DefineLinter('html') diff --git a/ale_linters/java/gitleaks.vim b/ale_linters/java/gitleaks.vim new file mode 100644 index 0000000000..56c44044a6 --- /dev/null +++ b/ale_linters/java/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Java files. + +call ale#handlers#gitleaks#DefineLinter('java') diff --git a/ale_linters/javascript/gitleaks.vim b/ale_linters/javascript/gitleaks.vim new file mode 100644 index 0000000000..6162d1b029 --- /dev/null +++ b/ale_linters/javascript/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for JavaScript files. + +call ale#handlers#gitleaks#DefineLinter('javascript') diff --git a/ale_linters/json/gitleaks.vim b/ale_linters/json/gitleaks.vim new file mode 100644 index 0000000000..2ac68dc4fa --- /dev/null +++ b/ale_linters/json/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for JSON files. + +call ale#handlers#gitleaks#DefineLinter('json') diff --git a/ale_linters/lua/gitleaks.vim b/ale_linters/lua/gitleaks.vim new file mode 100644 index 0000000000..a2c4fea0c8 --- /dev/null +++ b/ale_linters/lua/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Lua files. + +call ale#handlers#gitleaks#DefineLinter('lua') diff --git a/ale_linters/markdown/gitleaks.vim b/ale_linters/markdown/gitleaks.vim new file mode 100644 index 0000000000..bd3f4c3231 --- /dev/null +++ b/ale_linters/markdown/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Markdown files. + +call ale#handlers#gitleaks#DefineLinter('markdown') diff --git a/ale_linters/php/gitleaks.vim b/ale_linters/php/gitleaks.vim new file mode 100644 index 0000000000..23d7d7e259 --- /dev/null +++ b/ale_linters/php/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for PHP files. + +call ale#handlers#gitleaks#DefineLinter('php') diff --git a/ale_linters/powershell/gitleaks.vim b/ale_linters/powershell/gitleaks.vim new file mode 100644 index 0000000000..8cfdd61fb4 --- /dev/null +++ b/ale_linters/powershell/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for PowerShell files. + +call ale#handlers#gitleaks#DefineLinter('powershell') diff --git a/ale_linters/python/gitleaks.vim b/ale_linters/python/gitleaks.vim new file mode 100644 index 0000000000..772b30d3f6 --- /dev/null +++ b/ale_linters/python/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Python files. + +call ale#handlers#gitleaks#DefineLinter('python') diff --git a/ale_linters/rego/gitleaks.vim b/ale_linters/rego/gitleaks.vim new file mode 100644 index 0000000000..79c4746c26 --- /dev/null +++ b/ale_linters/rego/gitleaks.vim @@ -0,0 +1,4 @@ +scriptencoding utf-8 +" Description: gitleaks support for rego files. + +call ale#handlers#gitleaks#DefineLinter('rego') diff --git a/ale_linters/rst/gitleaks.vim b/ale_linters/rst/gitleaks.vim new file mode 100644 index 0000000000..161a0ad784 --- /dev/null +++ b/ale_linters/rst/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for ReStructuredText files. + +call ale#handlers#gitleaks#DefineLinter('rst') diff --git a/ale_linters/ruby/gitleaks.vim b/ale_linters/ruby/gitleaks.vim new file mode 100644 index 0000000000..6674366500 --- /dev/null +++ b/ale_linters/ruby/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Ruby files. + +call ale#handlers#gitleaks#DefineLinter('ruby') diff --git a/ale_linters/rust/gitleaks.vim b/ale_linters/rust/gitleaks.vim new file mode 100644 index 0000000000..83b991e302 --- /dev/null +++ b/ale_linters/rust/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Rust files. + +call ale#handlers#gitleaks#DefineLinter('rust') diff --git a/ale_linters/scala/gitleaks.vim b/ale_linters/scala/gitleaks.vim new file mode 100644 index 0000000000..3ee3d58d68 --- /dev/null +++ b/ale_linters/scala/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Scala files. + +call ale#handlers#gitleaks#DefineLinter('scala') diff --git a/ale_linters/sh/gitleaks.vim b/ale_linters/sh/gitleaks.vim new file mode 100644 index 0000000000..71f1aa3ea5 --- /dev/null +++ b/ale_linters/sh/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for terraform files. + +call ale#handlers#gitleaks#DefineLinter('sh') diff --git a/ale_linters/sql/gitleaks.vim b/ale_linters/sql/gitleaks.vim new file mode 100644 index 0000000000..d1a8d2217f --- /dev/null +++ b/ale_linters/sql/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for SQL files. + +call ale#handlers#gitleaks#DefineLinter('sql') diff --git a/ale_linters/swift/gitleaks.vim b/ale_linters/swift/gitleaks.vim new file mode 100644 index 0000000000..5835a6ea66 --- /dev/null +++ b/ale_linters/swift/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Swift files. + +call ale#handlers#gitleaks#DefineLinter('swift') diff --git a/ale_linters/terraform/gitleaks.vim b/ale_linters/terraform/gitleaks.vim new file mode 100644 index 0000000000..8279dff7d9 --- /dev/null +++ b/ale_linters/terraform/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for terraform files. + +call ale#handlers#gitleaks#DefineLinter('terraform') diff --git a/ale_linters/tex/gitleaks.vim b/ale_linters/tex/gitleaks.vim new file mode 100644 index 0000000000..c5a51392e4 --- /dev/null +++ b/ale_linters/tex/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for TeX files. + +call ale#handlers#gitleaks#DefineLinter('tex') diff --git a/ale_linters/texinfo/gitleaks.vim b/ale_linters/texinfo/gitleaks.vim new file mode 100644 index 0000000000..f543797e56 --- /dev/null +++ b/ale_linters/texinfo/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for TeXInfo files. + +call ale#handlers#gitleaks#DefineLinter('texinfo') diff --git a/ale_linters/text/gitleaks.vim b/ale_linters/text/gitleaks.vim new file mode 100644 index 0000000000..6ca8f48dd3 --- /dev/null +++ b/ale_linters/text/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for general text files. + +call ale#handlers#gitleaks#DefineLinter('text') diff --git a/ale_linters/typescript/gitleaks.vim b/ale_linters/typescript/gitleaks.vim new file mode 100644 index 0000000000..3a494416f3 --- /dev/null +++ b/ale_linters/typescript/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for TypeScript files. + +call ale#handlers#gitleaks#DefineLinter('typescript') diff --git a/ale_linters/vim/gitleaks.vim b/ale_linters/vim/gitleaks.vim new file mode 100644 index 0000000000..08bfdb57d5 --- /dev/null +++ b/ale_linters/vim/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Vim files. + +call ale#handlers#gitleaks#DefineLinter('vim') diff --git a/ale_linters/vue/gitleaks.vim b/ale_linters/vue/gitleaks.vim new file mode 100644 index 0000000000..442d8eabab --- /dev/null +++ b/ale_linters/vue/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Vue files. + +call ale#handlers#gitleaks#DefineLinter('vue') diff --git a/ale_linters/xhtml/gitleaks.vim b/ale_linters/xhtml/gitleaks.vim new file mode 100644 index 0000000000..692dde8781 --- /dev/null +++ b/ale_linters/xhtml/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for XHTML files. + +call ale#handlers#gitleaks#DefineLinter('xhtml') diff --git a/ale_linters/yaml/gitleaks.vim b/ale_linters/yaml/gitleaks.vim new file mode 100644 index 0000000000..cf683439b7 --- /dev/null +++ b/ale_linters/yaml/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for YAML files. + +call ale#handlers#gitleaks#DefineLinter('yaml') diff --git a/ale_linters/zig/gitleaks.vim b/ale_linters/zig/gitleaks.vim new file mode 100644 index 0000000000..e38e8439a0 --- /dev/null +++ b/ale_linters/zig/gitleaks.vim @@ -0,0 +1,5 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: gitleaks support for Zig files. + +call ale#handlers#gitleaks#DefineLinter('zig') diff --git a/autoload/ale/handlers/gitleaks.vim b/autoload/ale/handlers/gitleaks.vim new file mode 100644 index 0000000000..406bca7539 --- /dev/null +++ b/autoload/ale/handlers/gitleaks.vim @@ -0,0 +1,49 @@ +scriptencoding utf-8 +" Author: Peter Benjamin +" Description: Define a handler function for gitleaks + +call ale#Set('gitleaks_executable', 'gitleaks') +call ale#Set('gitleaks_options', '') + +function! ale#handlers#gitleaks#GetCommand(buffer) abort + return '%e' + \ . ' detect --no-git --no-color --no-banner --redact --verbose --source=%s' + \ . ale#Pad(ale#Var(a:buffer, 'gitleaks_options')) +endfunction + +function! ale#handlers#gitleaks#Handle(buffer, lines) abort + " Look for lines like the following: + " + " Finding: ACCESS_KEY_ID=REDACTED + " Secret: REDACTED + " RuleID: generic-api-key + " Entropy: 3.546594 + " File: tmp/env + " Line: 1 + " Fingerprint: tmp/env:generic-api-key:1 + let l:pattern = '\v^Fingerprint: .*:(.*):(\d+)$' + let l:output = [] + + for l:match in ale#util#GetMatches(a:lines, l:pattern) + call add(l:output, { + \ 'lnum': l:match[2] + 0, + \ 'text': l:match[1], + \ 'type': 'E', + \}) + endfor + + return l:output +endfunction + +function! ale#handlers#gitleaks#DefineLinter(filetype) abort + call ale#Set('gitleaks_executable', 'gitleaks') + call ale#Set('gitleaks_options', '') + + call ale#linter#Define(a:filetype, { + \ 'name': 'gitleaks', + \ 'executable': {b -> ale#Var(b, 'gitleaks_executable')}, + \ 'command': function('ale#handlers#gitleaks#GetCommand'), + \ 'callback': 'ale#handlers#gitleaks#Handle', + \ 'lint_file': 1, + \}) +endfunction diff --git a/doc/ale-ada.txt b/doc/ale-ada.txt index 80321dbb66..2a771407ea 100644 --- a/doc/ale-ada.txt +++ b/doc/ale-ada.txt @@ -7,6 +7,7 @@ cspell *ale-ada-cspell* See |ale-cspell-options| + =============================================================================== gcc *ale-ada-gcc* @@ -26,6 +27,12 @@ g:ale_ada_gcc_options *g:ale_ada_gcc_options* This variable can be set to pass additional options to gcc. +=============================================================================== +gitleaks *ale-ada-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== gnatpp *ale-ada-gnatpp* diff --git a/doc/ale-ansible.txt b/doc/ale-ansible.txt index 41442b0869..87370db924 100644 --- a/doc/ale-ansible.txt +++ b/doc/ale-ansible.txt @@ -2,11 +2,17 @@ ALE Ansible Integration *ale-ansible-options* =============================================================================== -ansible-language-server *ale-ansible-language-server* +gitleaks *ale-ansible-gitleaks* +See |ale-gitleaks-options| -g:ale_ansible_language_server_executable *g:ale_ansible_language_server* - *b:ale_ansible_language_server* + +=============================================================================== +ansible-language-server *ale-ansible-language-server* + + +g:ale_ansible_language_server_executable *g:ale_ansible_language_server* + *b:ale_ansible_language_server* Type: |String| Default: 'ansible-language-server' @@ -14,8 +20,8 @@ g:ale_ansible_language_server_executable *g:ale_ansible_language_server Variable can be used to modify the executable used for ansible language server. -g:ale_ansible_language_server_config *g:ale_ansible_language_server_config* - *b:ale_ansible_language_server_config* +g:ale_ansible_language_server_config *g:ale_ansible_language_server_config* + *b:ale_ansible_language_server_config* Type: |Dictionary| Default: '{}' diff --git a/doc/ale-asciidoc.txt b/doc/ale-asciidoc.txt index dd8b12ff78..7e932c5610 100644 --- a/doc/ale-asciidoc.txt +++ b/doc/ale-asciidoc.txt @@ -8,6 +8,12 @@ cspell *ale-asciidoc-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-asciidoc-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== write-good *ale-asciidoc-write-good* diff --git a/doc/ale-c.txt b/doc/ale-c.txt index d3517e791d..5946a74a6e 100644 --- a/doc/ale-c.txt +++ b/doc/ale-c.txt @@ -428,6 +428,12 @@ g:ale_c_flawfinder_error_severity *g:ale_c_flawfinder_error_severity* error. This setting also applies to flawfinder for c++. +=============================================================================== +gitleaks *ale-c-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== uncrustify *ale-c-uncrustify* diff --git a/doc/ale-cpp.txt b/doc/ale-cpp.txt index 3682556dff..3e6b56a6b8 100644 --- a/doc/ale-cpp.txt +++ b/doc/ale-cpp.txt @@ -391,6 +391,12 @@ g:ale_cpp_flawfinder_options *g:ale-cpp-flawfinder* This variable can be used to pass extra options into the flawfinder command. +=============================================================================== +gitleaks *ale-cpp-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== uncrustify *ale-cpp-uncrustify* diff --git a/doc/ale-cs.txt b/doc/ale-cs.txt index d9a9dc0092..08bc56600b 100644 --- a/doc/ale-cs.txt +++ b/doc/ale-cs.txt @@ -136,6 +136,12 @@ g:ale_cs_dotnet_format_options *g:ale_cs_dotnet_format_options* fixer. +=============================================================================== +gitleaks *ale-cs-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== mcs *ale-cs-mcs* diff --git a/doc/ale-dockerfile.txt b/doc/ale-dockerfile.txt index 5d95540407..7277d779cc 100644 --- a/doc/ale-dockerfile.txt +++ b/doc/ale-dockerfile.txt @@ -56,6 +56,12 @@ dprint *ale-dockerfile-dprint* See |ale-dprint-options| and https://dprint.dev/plugins/dockerfile +=============================================================================== +gitleaks *ale-dockerfile-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== hadolint *ale-dockerfile-hadolint* diff --git a/doc/ale-elixir.txt b/doc/ale-elixir.txt index 693db5aa6a..528975e9e0 100644 --- a/doc/ale-elixir.txt +++ b/doc/ale-elixir.txt @@ -3,32 +3,31 @@ ALE Elixir Integration *ale-elixir-options* =============================================================================== -mix *ale-elixir-mix* - -The `mix` linter is disabled by default, as it can be too expensive to run. -See `:help g:ale_linters` +credo *ale-elixir-credo* +Credo (https://github.com/rrrene/credo) -g:ale_elixir_mix_options *g:ale_elixir_mix_options* - *b:ale_elixir_mix_options* - Type: |String| - Default: `'mix'` +g:ale_elixir_credo_strict *g:ale_elixir_credo_strict* + Type: |Integer| + Default: `0` - This variable can be changed to specify the mix executable. + Tells credo to run in strict mode or suggest mode. Set variable to 1 to + enable --strict mode. -=============================================================================== -mix_format *ale-elixir-mix-format* +g:ale_elixir_credo_config_file *g:ale_elixir_credo_config_file* -g:ale_elixir_mix_format_options *g:ale_elixir_mix_format_options* - *b:ale_elixir_mix_format_options* Type: |String| Default: `''` + Tells credo to use a custom configuration file. - This variable can be changed to specify the mix options passed to the - mix_format fixer + +=============================================================================== +cspell *ale-elixir-cspell* + +See |ale-cspell-options| =============================================================================== @@ -77,31 +76,38 @@ g:ale_elixir_elixir_ls_config *g:ale_elixir_elixir_ls_config* =============================================================================== -credo *ale-elixir-credo* +gitleaks *ale-elixir-gitleaks* -Credo (https://github.com/rrrene/credo) - -g:ale_elixir_credo_strict *g:ale_elixir_credo_strict* +See |ale-gitleaks-options| - Type: |Integer| - Default: `0` - Tells credo to run in strict mode or suggest mode. Set variable to 1 to - enable --strict mode. +=============================================================================== +mix *ale-elixir-mix* +The `mix` linter is disabled by default, as it can be too expensive to run. +See `:help g:ale_linters` -g:ale_elixir_credo_config_file *g:ale_elixir_credo_config_file* +g:ale_elixir_mix_options *g:ale_elixir_mix_options* + *b:ale_elixir_mix_options* Type: |String| - Default: `''` + Default: `'mix'` - Tells credo to use a custom configuration file. + + This variable can be changed to specify the mix executable. =============================================================================== -cspell *ale-elixir-cspell* +mix_format *ale-elixir-mix-format* -See |ale-cspell-options| +g:ale_elixir_mix_format_options *g:ale_elixir_mix_format_options* + *b:ale_elixir_mix_format_options* + Type: |String| + Default: `''` + + + This variable can be changed to specify the mix options passed to the + mix_format fixer =============================================================================== diff --git a/doc/ale-go.txt b/doc/ale-go.txt index ea6311a86c..1bb1b43810 100644 --- a/doc/ale-go.txt +++ b/doc/ale-go.txt @@ -56,6 +56,13 @@ cspell *ale-go-cspell* See |ale-cspell-options| + +=============================================================================== +gitleaks *ale-go-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== gobuild *ale-go-gobuild* diff --git a/doc/ale-haskell.txt b/doc/ale-haskell.txt index bcd157246e..e936e5afe2 100644 --- a/doc/ale-haskell.txt +++ b/doc/ale-haskell.txt @@ -13,6 +13,18 @@ g:ale_haskell_brittany_executable *g:ale_haskell_brittany_executable* This variable can be changed to use a different executable for brittany. +=============================================================================== +cabal-ghc *ale-haskell-cabal-ghc* + +g:ale_haskell_cabal_ghc_options *g:ale_haskell_cabal_ghc_options* + *b:ale_haskell_cabal_ghc_options* + Type: |String| + Default: `'-fno-code -v0'` + + This variable can be changed to modify flags given to ghc through cabal + exec. + + =============================================================================== cspell *ale-haskell-cspell* @@ -30,6 +42,26 @@ g:ale_haskell_floskell_executable *g:ale_haskell_floskell_executable* This variable can be changed to use a different executable for floskell. +=============================================================================== +fourmolu *ale-haskell-fourmolu* + +g:ale_haskell_fourmolu_executable *g:ale_haskell_fourmolu_executable* + *b:ale_haskell_fourmolu_executable* + Type: |String| + Default: `'fourmolu'` + + This variable can be changed to use a different executable for fourmolu. + + +g:ale_haskell_fourmolu_options *g:ale_haskell_fourmolu_options* + *b:ale_haskell_fourmolu_options* + Type: |String| + Default: `''` + + This variable can be used to pass extra options to the underlying fourmolu + executable. + + =============================================================================== ghc *ale-haskell-ghc* @@ -53,15 +85,9 @@ g:ale_haskell_ghc_mod_executable *g:ale_haskell_ghc_mod_executable* =============================================================================== -cabal-ghc *ale-haskell-cabal-ghc* - -g:ale_haskell_cabal_ghc_options *g:ale_haskell_cabal_ghc_options* - *b:ale_haskell_cabal_ghc_options* - Type: |String| - Default: `'-fno-code -v0'` +gitleaks *ale-haskell-gitleaks* - This variable can be changed to modify flags given to ghc through cabal - exec. +See |ale-gitleaks-options| =============================================================================== @@ -99,6 +125,18 @@ g:ale_haskell_hfmt_executable *g:ale_haskell_hfmt_executable* This variable can be changed to use a different executable for hfmt. +=============================================================================== +hie *ale-haskell-hie* + +g:ale_haskell_hie_executable *g:ale_haskell_hie_executable* + *b:ale_haskell_hie_executable* + Type: |String| + Default: `'hie'` + + This variable can be changed to use a different executable for the haskell + ide engine. i.e. `'hie-wrapper'` + + =============================================================================== hindent *ale-haskell-hindent* @@ -156,6 +194,26 @@ g:ale_haskell_hls_config *g:ale_haskell_hls_config* https://haskell-language-server.readthedocs.io/en/latest/configuration.html#language-specific-server-options +=============================================================================== +ormolu *ale-haskell-ormolu* + +g:ale_haskell_ormolu_executable *g:ale_haskell_ormolu_executable* + *b:ale_haskell_ormolu_executable* + Type: |String| + Default: `'ormolu'` + + This variable can be changed to use a different executable for ormolu. + + +g:ale_haskell_ormolu_options *g:ale_haskell_ormolu_options* + *b:ale_haskell_ormolu_options* + Type: |String| + Default: `''` + + This variable can be used to pass extra options to the underlying ormolu + executable. + + =============================================================================== stack-build *ale-haskell-stack-build* @@ -192,57 +250,5 @@ g:ale_haskell_stylish_haskell_executable This variable can be changed to use a different executable for stylish-haskell. -=============================================================================== -hie *ale-haskell-hie* - -g:ale_haskell_hie_executable *g:ale_haskell_hie_executable* - *b:ale_haskell_hie_executable* - Type: |String| - Default: `'hie'` - - This variable can be changed to use a different executable for the haskell - ide engine. i.e. `'hie-wrapper'` - - -=============================================================================== -ormolu *ale-haskell-ormolu* - -g:ale_haskell_ormolu_executable *g:ale_haskell_ormolu_executable* - *b:ale_haskell_ormolu_executable* - Type: |String| - Default: `'ormolu'` - - This variable can be changed to use a different executable for ormolu. - - -g:ale_haskell_ormolu_options *g:ale_haskell_ormolu_options* - *b:ale_haskell_ormolu_options* - Type: |String| - Default: `''` - - This variable can be used to pass extra options to the underlying ormolu - executable. - - -=============================================================================== -fourmolu *ale-haskell-fourmolu* - -g:ale_haskell_fourmolu_executable *g:ale_haskell_fourmolu_executable* - *b:ale_haskell_fourmolu_executable* - Type: |String| - Default: `'fourmolu'` - - This variable can be changed to use a different executable for fourmolu. - - -g:ale_haskell_fourmolu_options *g:ale_haskell_fourmolu_options* - *b:ale_haskell_fourmolu_options* - Type: |String| - Default: `''` - - This variable can be used to pass extra options to the underlying fourmolu - executable. - - =============================================================================== vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl: diff --git a/doc/ale-html.txt b/doc/ale-html.txt index 189a7ed046..9873cfdba5 100644 --- a/doc/ale-html.txt +++ b/doc/ale-html.txt @@ -33,6 +33,7 @@ cspell *ale-html-cspell* See |ale-cspell-options| + =============================================================================== fecs *ale-html-fecs* @@ -42,6 +43,12 @@ of them read `./.fecsrc` as the default configuration file. See: |ale-javascript-fecs|. +=============================================================================== +gitleaks *ale-html-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== html-beautify *ale-html-beautify* diff --git a/doc/ale-java.txt b/doc/ale-java.txt index 696118667a..9e32d272bd 100644 --- a/doc/ale-java.txt +++ b/doc/ale-java.txt @@ -54,6 +54,112 @@ cspell *ale-java-cspell* See |ale-cspell-options| +=============================================================================== +eclipselsp *ale-java-eclipselsp* + +To enable Eclipse JDT LSP linter you need to clone and build the eclipse.jdt.ls +language server from https://github.com/eclipse/eclipse.jdt.ls. Simply +clone the source code repo and then build the plugin: + + ./mvnw clean verify + +Note: currently, the build can only run when launched with JDK 11. More +recent versions can be used to run the server though. + +After build completes the files required to run the language server will be +located inside the repository folder `eclipse.jdt.ls`. Please ensure to set +|g:ale_java_eclipselsp_path| to the absolute path of that folder. + +You could customize compiler options and code assists of the server. +Under your project folder, modify the file `.settings/org.eclipse.jdt.core.prefs` +with options presented at +https://help.eclipse.org/neon/topic/org.eclipse.jdt.doc.isv/reference/api/org/eclipse/jdt/core/JavaCore.html. + +g:ale_java_eclipselsp_path *g:ale_java_eclipselsp_path* + *b:ale_java_eclipselsp_path* + + Type: |String| + Default: `'$HOME/eclipse.jdt.ls'` + + Absolute path to the location of the eclipse.jdt.ls repository folder. Or if + you have VSCode extension installed the absolute path to the VSCode + extensions folder (e.g. $HOME/.vscode/extensions/redhat.java-0.4x.0 in + Linux). + + +g:ale_java_eclipselsp_executable *g:ale_java_eclipse_executable* + *b:ale_java_eclipse_executable* + Type: |String| + Default: `'java'` + + This variable can be set to change the executable path used for java. + + +g:ale_java_eclipselsp_config_path *g:ale_java_eclipse_config_path* + *b:ale_java_eclipse_config_path* + Type: |String| + Default: `''` + + Set this variable to change the configuration directory path used by + eclipselsp (e.g. `$HOME/.jdtls` in Linux). + By default ALE will attempt to use the configuration within the installation + directory. + This setting is particularly useful when eclipselsp is installed in a + non-writable directory like `/usr/share/java/jdtls`, as is the case when + installed via system package. + + +g:ale_java_eclipselsp_workspace_path *g:ale_java_eclipselsp_workspace_path* + *b:ale_java_eclipselsp_workspace_path* + + Type: |String| + Default: `''` + + If you have Eclipse installed is good idea to set this variable to the + absolute path of the Eclipse workspace. If not set this value will be set to + the parent folder of the project root. + +g:ale_java_eclipselsp_javaagent *g:ale_java_eclipselsp_javaagent* + *b:ale_java_eclipselsp_javaagent* + + Type: |String| + Default: `''` + + A variable to add java agent for annotation processing such as Lombok. + If you have multiple java agent files, use space to separate them. + For example: +> + let g:ale_java_eclipselsp_javaagent='/eclipse/lombok.jar /eclipse/jacoco.jar' +< + + +=============================================================================== +gitleaks *ale-java-gitleaks* + +See |ale-gitleaks-options| + + +=============================================================================== +google-java-format *ale-java-google-java-format* + + +g:ale_java_google_java_format_executable + *g:ale_java_google_java_format_executable* + *b:ale_java_google_java_format_executable* + Type: |String| + Default: `'google-java-format'` + + See |ale-integrations-local-executables| + + +g:ale_java_google_java_format_options *g:ale_java_google_java_format_options* + *b:ale_java_google_java_format_options* + Type: |String| + Default: `''` + + This variable can be set to pass additional options + + =============================================================================== javac *ale-java-javac* @@ -104,39 +210,6 @@ List type: \ ] < -=============================================================================== -google-java-format *ale-java-google-java-format* - - -g:ale_java_google_java_format_executable - *g:ale_java_google_java_format_executable* - *b:ale_java_google_java_format_executable* - Type: |String| - Default: `'google-java-format'` - - See |ale-integrations-local-executables| - - -g:ale_java_google_java_format_options *g:ale_java_google_java_format_options* - *b:ale_java_google_java_format_options* - Type: |String| - Default: `''` - - This variable can be set to pass additional options - - -=============================================================================== -pmd *ale-java-pmd* - -g:ale_java_pmd_options *g:ale_java_pmd_options* - *b:ale_java_pmd_options* - - Type: |String| - Default: `'-R category/java/bestpractices'` - - This variable can be changed to modify flags given to PMD. Do not specify -f - and -d. They are added automatically. - =============================================================================== javalsp *ale-java-javalsp* @@ -204,82 +277,17 @@ The Java language server will look for the dependencies you specify in =============================================================================== -eclipselsp *ale-java-eclipselsp* - -To enable Eclipse JDT LSP linter you need to clone and build the eclipse.jdt.ls -language server from https://github.com/eclipse/eclipse.jdt.ls. Simply -clone the source code repo and then build the plugin: - - ./mvnw clean verify - -Note: currently, the build can only run when launched with JDK 11. More -recent versions can be used to run the server though. - -After build completes the files required to run the language server will be -located inside the repository folder `eclipse.jdt.ls`. Please ensure to set -|g:ale_java_eclipselsp_path| to the absolute path of that folder. - -You could customize compiler options and code assists of the server. -Under your project folder, modify the file `.settings/org.eclipse.jdt.core.prefs` -with options presented at -https://help.eclipse.org/neon/topic/org.eclipse.jdt.doc.isv/reference/api/org/eclipse/jdt/core/JavaCore.html. - -g:ale_java_eclipselsp_path *g:ale_java_eclipselsp_path* - *b:ale_java_eclipselsp_path* - - Type: |String| - Default: `'$HOME/eclipse.jdt.ls'` - - Absolute path to the location of the eclipse.jdt.ls repository folder. Or if - you have VSCode extension installed the absolute path to the VSCode - extensions folder (e.g. $HOME/.vscode/extensions/redhat.java-0.4x.0 in - Linux). - - -g:ale_java_eclipselsp_executable *g:ale_java_eclipse_executable* - *b:ale_java_eclipse_executable* - Type: |String| - Default: `'java'` - - This variable can be set to change the executable path used for java. - - -g:ale_java_eclipselsp_config_path *g:ale_java_eclipse_config_path* - *b:ale_java_eclipse_config_path* - Type: |String| - Default: `''` - - Set this variable to change the configuration directory path used by - eclipselsp (e.g. `$HOME/.jdtls` in Linux). - By default ALE will attempt to use the configuration within the installation - directory. - This setting is particularly useful when eclipselsp is installed in a - non-writable directory like `/usr/share/java/jdtls`, as is the case when - installed via system package. - +pmd *ale-java-pmd* -g:ale_java_eclipselsp_workspace_path *g:ale_java_eclipselsp_workspace_path* - *b:ale_java_eclipselsp_workspace_path* +g:ale_java_pmd_options *g:ale_java_pmd_options* + *b:ale_java_pmd_options* Type: |String| - Default: `''` - - If you have Eclipse installed is good idea to set this variable to the - absolute path of the Eclipse workspace. If not set this value will be set to - the parent folder of the project root. - -g:ale_java_eclipselsp_javaagent *g:ale_java_eclipselsp_javaagent* - *b:ale_java_eclipselsp_javaagent* + Default: `'-R category/java/bestpractices'` - Type: |String| - Default: `''` + This variable can be changed to modify flags given to PMD. Do not specify -f + and -d. They are added automatically. - A variable to add java agent for annotation processing such as Lombok. - If you have multiple java agent files, use space to separate them. - For example: -> - let g:ale_java_eclipselsp_javaagent='/eclipse/lombok.jar /eclipse/jacoco.jar' -< =============================================================================== uncrustify *ale-java-uncrustify* diff --git a/doc/ale-javascript.txt b/doc/ale-javascript.txt index a55cd64398..cbb44fd884 100644 --- a/doc/ale-javascript.txt +++ b/doc/ale-javascript.txt @@ -168,6 +168,12 @@ g:ale_javascript_flow_use_respect_pragma `0` to disable that behavior, so all files can be checked by `flow`. +=============================================================================== +gitleaks *ale-javascript-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== importjs *ale-javascript-importjs* diff --git a/doc/ale-json.txt b/doc/ale-json.txt index 7b240373de..ed3aa7662c 100644 --- a/doc/ale-json.txt +++ b/doc/ale-json.txt @@ -77,6 +77,12 @@ g:ale_json_fixjson_use_global *g:ale_json_fixjson_use_global* See |ale-integrations-local-executables| +=============================================================================== +gitleaks *ale-json-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== jsonlint *ale-json-jsonlint* diff --git a/doc/ale-lua.txt b/doc/ale-lua.txt index 62d673242b..bae38d8588 100644 --- a/doc/ale-lua.txt +++ b/doc/ale-lua.txt @@ -8,6 +8,12 @@ cspell *ale-lua-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-lua-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== lua-format *ale-lua-lua-format* diff --git a/doc/ale-markdown.txt b/doc/ale-markdown.txt index 693c8a4497..8d625fd4aa 100644 --- a/doc/ale-markdown.txt +++ b/doc/ale-markdown.txt @@ -14,6 +14,12 @@ dprint *ale-markdown-dprint* See |ale-dprint-options| and https://dprint.dev/plugins/markdown +=============================================================================== +gitleaks *ale-markdown-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== markdownlint *ale-markdown-markdownlint* diff --git a/doc/ale-php.txt b/doc/ale-php.txt index 2750a319f9..db7de96c61 100644 --- a/doc/ale-php.txt +++ b/doc/ale-php.txt @@ -8,6 +8,12 @@ cspell *ale-php-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-php-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== langserver *ale-php-langserver* diff --git a/doc/ale-powershell.txt b/doc/ale-powershell.txt index 44a3c61832..67c75ddca8 100644 --- a/doc/ale-powershell.txt +++ b/doc/ale-powershell.txt @@ -8,6 +8,12 @@ cspell *ale-powershell-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-powershell-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== powershell *ale-powershell-powershell* diff --git a/doc/ale-python.txt b/doc/ale-python.txt index d7c5cacc16..463d8cb8bc 100644 --- a/doc/ale-python.txt +++ b/doc/ale-python.txt @@ -410,6 +410,12 @@ g:ale_python_flakehell_auto_poetry *g:ale_python_flakehell_auto_poetry* if true. This is overridden by a manually-set executable. +=============================================================================== +gitleaks *ale-python-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== isort *ale-python-isort* diff --git a/doc/ale-rego.txt b/doc/ale-rego.txt index 9a39dbf0f8..0fb0765ab2 100644 --- a/doc/ale-rego.txt +++ b/doc/ale-rego.txt @@ -8,6 +8,12 @@ cspell *ale-rego-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-rego-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== opacheck *ale-rego-opa-check* diff --git a/doc/ale-restructuredtext.txt b/doc/ale-restructuredtext.txt index 7af621338a..1ae0ea9394 100644 --- a/doc/ale-restructuredtext.txt +++ b/doc/ale-restructuredtext.txt @@ -8,6 +8,12 @@ cspell *ale-restructuredtext-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-restructuredtext-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== textlint *ale-restructuredtext-textlint* diff --git a/doc/ale-ruby.txt b/doc/ale-ruby.txt index b0773fddc3..996095b9bf 100644 --- a/doc/ale-ruby.txt +++ b/doc/ale-ruby.txt @@ -48,6 +48,12 @@ g:ale_ruby_debride_options *g:ale_ruby_debride_options* This variable can be changed to modify flags given to debride. +=============================================================================== +gitleaks *ale-ruby-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== prettier *ale-ruby-prettier* diff --git a/doc/ale-rust.txt b/doc/ale-rust.txt index 48f558e8d7..d649f738f3 100644 --- a/doc/ale-rust.txt +++ b/doc/ale-rust.txt @@ -204,6 +204,12 @@ cspell *ale-rust-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-rust-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== rls *ale-rust-rls* diff --git a/doc/ale-scala.txt b/doc/ale-scala.txt index 0b0f1a9a55..17c577de3c 100644 --- a/doc/ale-scala.txt +++ b/doc/ale-scala.txt @@ -8,6 +8,12 @@ cspell *ale-scala-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-scala-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== metals *ale-scala-metals* diff --git a/doc/ale-sh.txt b/doc/ale-sh.txt index 9a1928c43c..4726be512a 100644 --- a/doc/ale-sh.txt +++ b/doc/ale-sh.txt @@ -31,6 +31,12 @@ cspell *ale-sh-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-sh-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== sh-language-server *ale-sh-language-server* diff --git a/doc/ale-sql.txt b/doc/ale-sql.txt index 225ac7dfd8..f6bcdf7f80 100644 --- a/doc/ale-sql.txt +++ b/doc/ale-sql.txt @@ -9,6 +9,12 @@ See |ale-dprint-options| and https://github.com/dprint/dprint-plugin-sql/releases +=============================================================================== +gitleaks *ale-sql-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== pgformatter *ale-sql-pgformatter* diff --git a/doc/ale-supported-languages-and-tools.txt b/doc/ale-supported-languages-and-tools.txt index 40c78f76ed..23952e558e 100644 --- a/doc/ale-supported-languages-and-tools.txt +++ b/doc/ale-supported-languages-and-tools.txt @@ -16,10 +16,12 @@ Notes: * `ada_language_server` * `cspell` * `gcc` + * `gitleaks`!! * `gnatpp` * Ansible * `ansible-language-server` * `ansible-lint`!! + * `gitleaks`!! * API Blueprint * `drafter` * APKBUILD @@ -28,6 +30,7 @@ Notes: * AsciiDoc * `alex` * `cspell` + * `gitleaks`!! * `languagetool`!! * `proselint` * `redpen` @@ -44,6 +47,7 @@ Notes: * Bash * `bashate` * `cspell` + * `gitleaks`!! * `language-server` * `shell` (-n flag) * `shellcheck` @@ -75,12 +79,14 @@ Notes: * `cspell` * `flawfinder` * `gcc` (`cc`) + * `gitleaks`!! * `uncrustify` * C# * `clang-format` * `csc`!! * `cspell` * `dotnet-format` + * `gitleaks`!! * `mcs` * `mcsc`!! * `uncrustify` @@ -99,6 +105,7 @@ Notes: * `cspell` * `flawfinder` * `gcc` (`cc`) + * `gitleaks`!! * `uncrustify` * Cairo * `starknet` @@ -161,6 +168,7 @@ Notes: * `dockerfile_lint` * `dockerlinter` * `dprint` + * `gitleaks`!! * `hadolint` * Elixir * `credo` @@ -168,6 +176,7 @@ Notes: * `dialyxir` * `dogma`!! * `elixir-ls` + * `gitleaks`!! * `mix`!! * Elm * `elm-format` @@ -205,6 +214,7 @@ Notes: * Go * `bingo` * `cspell` + * `gitleaks`!! * `go build`!! * `go mod`!! * `go vet`!! @@ -241,6 +251,7 @@ Notes: * `fourmolu` * `ghc` * `ghc-mod` + * `gitleaks`!! * `hdevtools` * `hfmt` * `hie` @@ -261,6 +272,7 @@ Notes: * `cspell` * `eslint` * `fecs` + * `gitleaks`!! * `html-beautify` * `htmlhint` * `prettier` @@ -282,6 +294,7 @@ Notes: * `clang-format` * `cspell` * `eclipselsp` + * `gitleaks`!! * `google-java-format` * `javac` * `javalsp` @@ -294,6 +307,7 @@ Notes: * `eslint` * `fecs` * `flow` + * `gitleaks`!! * `jscs` * `jshint` * `prettier` @@ -309,6 +323,7 @@ Notes: * `dprint` * `eslint` * `fixjson` + * `gitleaks`!! * `jq` * `jsonlint` * `prettier` @@ -330,6 +345,7 @@ Notes: * `alex` * `chktex` * `cspell` + * `gitleaks`!! * `lacheck` * `proselint` * `redpen` @@ -345,6 +361,7 @@ Notes: * `llc` * Lua * `cspell` + * `gitleaks`!! * `lua-format` * `lua-language-server` * `luac` @@ -362,6 +379,7 @@ Notes: * Markdown * `alex` * `cspell` + * `gitleaks`!! * `languagetool`!! * `markdownlint`!! * `marksman` @@ -433,6 +451,7 @@ Notes: * `perl6 -c` * PHP * `cspell` + * `gitleaks`!! * `intelephense` * `langserver` * `phan` @@ -459,6 +478,7 @@ Notes: * `ponyc` * PowerShell * `cspell` + * `gitleaks`!! * `powershell` * `psscriptanalyzer` * Prolog @@ -488,6 +508,7 @@ Notes: * `cspell` * `flake8` * `flakehell` + * `gitleaks`!! * `isort` * `mypy` * `prospector`!! @@ -527,11 +548,13 @@ Notes: * `refmt` * Rego * `cspell` + * `gitleaks`!! * `opacheck` * `opafmt` * reStructuredText * `alex` * `cspell` + * `gitleaks`!! * `proselint` * `redpen` * `rstcheck` @@ -546,6 +569,7 @@ Notes: * `brakeman`!! * `cspell` * `debride` + * `gitleaks`!! * `prettier` * `rails_best_practices`!! * `reek` @@ -559,6 +583,7 @@ Notes: * Rust * `cargo`!! * `cspell` + * `gitleaks`!! * `rls` * `rust-analyzer` * `rustc` (see |ale-integration-rust|) @@ -571,6 +596,7 @@ Notes: * Scala * `cspell` * `fsc` + * `gitleaks`!! * `metals` * `sbtserver` * `scalac` @@ -591,6 +617,7 @@ Notes: * `solium` * SQL * `dprint` + * `gitleaks`!! * `pgformatter` * `sql-lint` * `sqlfluff` @@ -607,6 +634,7 @@ Notes: * Swift * Apple `swift-format` * `cspell` + * `gitleaks`!! * `sourcekit-lsp` * `swiftformat` * `swiftlint` @@ -616,6 +644,7 @@ Notes: * `nagelfar`!! * Terraform * `checkov` + * `gitleaks`!! * `terraform` * `terraform-fmt-fixer` * `terraform-ls` @@ -625,11 +654,13 @@ Notes: * Texinfo * `alex` * `cspell` + * `gitleaks`!! * `proselint` * `write-good` * Text^ * `alex` * `cspell` + * `gitleaks`!! * `languagetool`!! * `proselint` * `redpen` @@ -647,6 +678,7 @@ Notes: * `dprint` * `eslint` * `fecs` + * `gitleaks`!! * `prettier` * `standard` * `tslint` @@ -670,6 +702,7 @@ Notes: * `vcom` * `xvhdl` * Vim + * `gitleaks`!! * `vimls` * `vint` * Vim help^ @@ -678,6 +711,7 @@ Notes: * `write-good` * Vue * `cspell` + * `gitleaks`!! * `prettier` * `vls` * `volar` @@ -686,6 +720,7 @@ Notes: * XHTML * `alex` * `cspell` + * `gitleaks`!! * `proselint` * `write-good` * XML @@ -694,6 +729,7 @@ Notes: * `actionlint` * `circleci`!! * `gitlablint` + * `gitleaks`!! * `prettier` * `spectral` * `swaglint` @@ -706,6 +742,7 @@ Notes: * Zeek * `zeek`!! * Zig + * `gitleaks`!! * `zigfmt` * `zls` diff --git a/doc/ale-swift.txt b/doc/ale-swift.txt index a443eab88f..1c98b158d6 100644 --- a/doc/ale-swift.txt +++ b/doc/ale-swift.txt @@ -48,6 +48,12 @@ cspell *ale-swift-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-swift-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== sourcekitlsp *ale-swift-sourcekitlsp* diff --git a/doc/ale-terraform.txt b/doc/ale-terraform.txt index 91a7dd164b..ca4087fe70 100644 --- a/doc/ale-terraform.txt +++ b/doc/ale-terraform.txt @@ -21,6 +21,13 @@ g:ale_terraform_checkov_options *g:ale_terraform_checkov_options* This variable can be changed to set additional options for checkov. + +=============================================================================== +gitleaks *ale-terraform-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== terraform-fmt-fixer *ale-terraform-fmt-fixer* @@ -135,4 +142,3 @@ g:ale_terraform_tfsec_options *g:ale_terraform_tfsec_options* =============================================================================== vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl: - diff --git a/doc/ale-tex.txt b/doc/ale-tex.txt index fa0d827e86..4f5bb9f7fe 100644 --- a/doc/ale-tex.txt +++ b/doc/ale-tex.txt @@ -27,6 +27,12 @@ cspell *ale-tex-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-tex-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== lacheck *ale-tex-lacheck* diff --git a/doc/ale-texinfo.txt b/doc/ale-texinfo.txt index 53d42b6908..d2c33f4a7d 100644 --- a/doc/ale-texinfo.txt +++ b/doc/ale-texinfo.txt @@ -8,6 +8,12 @@ cspell *ale-texinfo-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-texinfo-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== write-good *ale-texinfo-write-good* diff --git a/doc/ale-text.txt b/doc/ale-text.txt index 4e4d0b2e18..caea1f1f9b 100644 --- a/doc/ale-text.txt +++ b/doc/ale-text.txt @@ -2,12 +2,18 @@ ALE Text Integration *ale-text-options* -============================================================================== +=============================================================================== cspell *ale-text-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-text-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== textlint *ale-text-textlint* diff --git a/doc/ale-typescript.txt b/doc/ale-typescript.txt index 4a99379311..86f28c70a4 100644 --- a/doc/ale-typescript.txt +++ b/doc/ale-typescript.txt @@ -64,6 +64,12 @@ the two languages are, the `eslint` linter for TypeScript uses the JavaScript options for `eslint` too. See: |ale-javascript-eslint|. +=============================================================================== +gitleaks *ale-typescript-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== prettier *ale-typescript-prettier* diff --git a/doc/ale-vim.txt b/doc/ale-vim.txt index f85b43eb50..0ce4762f66 100644 --- a/doc/ale-vim.txt +++ b/doc/ale-vim.txt @@ -2,6 +2,12 @@ ALE Vim Integration *ale-vim-options* +=============================================================================== +gitleaks *ale-vim-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== vimls *ale-vim-vimls* diff --git a/doc/ale-vue.txt b/doc/ale-vue.txt index 3f382e4f8b..41872ced18 100644 --- a/doc/ale-vue.txt +++ b/doc/ale-vue.txt @@ -8,6 +8,12 @@ cspell *ale-vue-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-vue-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== prettier *ale-vue-prettier* diff --git a/doc/ale-xhtml.txt b/doc/ale-xhtml.txt index 10ca5b8211..3dad1213d4 100644 --- a/doc/ale-xhtml.txt +++ b/doc/ale-xhtml.txt @@ -8,6 +8,12 @@ cspell *ale-xhtml-cspell* See |ale-cspell-options| +=============================================================================== +gitleaks *ale-xhtml-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== write-good *ale-xhtml-write-good* diff --git a/doc/ale-yaml.txt b/doc/ale-yaml.txt index a6741c8320..ad4b80f959 100644 --- a/doc/ale-yaml.txt +++ b/doc/ale-yaml.txt @@ -69,6 +69,12 @@ it sends network requests, and running too often would overload the circleci servers. +=============================================================================== +gitleaks *ale-yaml-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== prettier *ale-yaml-prettier* diff --git a/doc/ale-zig.txt b/doc/ale-zig.txt index cafa12a1f5..73d1c4c513 100644 --- a/doc/ale-zig.txt +++ b/doc/ale-zig.txt @@ -8,6 +8,12 @@ Integration Information Currently, the only supported linter for zig is zls. +=============================================================================== +gitleaks *ale-zig-gitleaks* + +See |ale-gitleaks-options| + + =============================================================================== zigfmt *ale-zig-zigfmt* diff --git a/doc/ale.txt b/doc/ale.txt index e73abc9960..e786a05bfd 100644 --- a/doc/ale.txt +++ b/doc/ale.txt @@ -1267,16 +1267,16 @@ g:ale_floating_window_border *g:ale_floating_window_border* Default: `['|', '-', '+', '+', '+', '+', '|', '-']` When set to `[]`, window borders are disabled. The elements in the list set - the the characters for the left side, top, top-left corner, top-right - corner, bottom-right corner, bottom-left corner, right side, and bottom of - the floating window, respectively. + the the characters for the left side, top, top-left corner, top-right + corner, bottom-right corner, bottom-left corner, right side, and bottom of + the floating window, respectively. If the terminal supports Unicode, you might try setting the value to ` ['│', '─', '╭', '╮', '╯', '╰', '│', '─']`, to make it look nicer. NOTE: For compatibility with previous versions, if the list does not have - elements for the right side and bottom, the left side and top will be used - instead. + elements for the right side and bottom, the left side and top will be used + instead. g:ale_history_enabled *g:ale_history_enabled* @@ -2774,7 +2774,27 @@ g:ale_dprint_use_global *g:ale_dprint_use_global* ------------------------------------------------------------------------------- -7.4. Options for languagetool *ale-languagetool-options* +7.4. Options for gitleaks *ale-gitleaks-options* + +The options for `gitleaks` are shared between all filetypes, so options can be +configured only once. + +g:ale_gitleaks_executable *g:ale_gitleaks_executable* + *b:ale_gitleaks_executable* + Type: |String| + Default: `'gitleaks'` + + +g:ale_gitleaks_options *g:ale_gitleaks_options* + *b:ale_gitleaks_options* + Type: |String| + Default: `''` + + This variable can be set to pass additional options to `gitleaks`. + + +------------------------------------------------------------------------------- +7.5. Options for languagetool *ale-languagetool-options* g:ale_languagetool_executable *g:ale_languagetool_executable* *b:ale_languagetool_executable* @@ -2794,7 +2814,7 @@ g:ale_languagetool_options *g:ale_languagetool_options* ------------------------------------------------------------------------------- -7.5. Options for write-good *ale-write-good-options* +7.6. Options for write-good *ale-write-good-options* The options for `write-good` are shared between all filetypes, so options can be configured once. @@ -2824,7 +2844,7 @@ g:ale_writegood_use_global *g:ale_writegood_use_global* ------------------------------------------------------------------------------- -7.6. Other Linter/Fixer Options *ale-other-integration-options* +7.7. Other Linter/Fixer Options *ale-other-integration-options* ALE supports a very wide variety of tools. Other linter or fixer options are documented in additional help files. @@ -2832,9 +2852,11 @@ documented in additional help files. ada.....................................|ale-ada-options| cspell................................|ale-ada-cspell| gcc...................................|ale-ada-gcc| + gitleaks..............................|ale-ada-gitleaks| gnatpp................................|ale-ada-gnatpp| ada-language-server...................|ale-ada-language-server| ansible.................................|ale-ansible-options| + gitleaks..............................|ale-ansible-gitleaks| ansible-language-server...............|ale-ansible-language-server| ansible-lint..........................|ale-ansible-ansible-lint| apkbuild................................|ale-apkbuild-options| @@ -2842,6 +2864,7 @@ documented in additional help files. secfixes-check........................|ale-apkbuild-secfixes-check| asciidoc................................|ale-asciidoc-options| cspell................................|ale-asciidoc-cspell| + gitleaks..............................|ale-asciidoc-gitleaks| write-good............................|ale-asciidoc-write-good| textlint..............................|ale-asciidoc-textlint| asm.....................................|ale-asm-options| @@ -2873,6 +2896,7 @@ documented in additional help files. cquery................................|ale-c-cquery| cspell................................|ale-c-cspell| flawfinder............................|ale-c-flawfinder| + gitleaks..............................|ale-c-gitleaks| uncrustify............................|ale-c-uncrustify| cairo...................................|ale-cairo-options| starknet..............................|ale-cairo-starknet| @@ -2902,12 +2926,14 @@ documented in additional help files. cquery................................|ale-cpp-cquery| cspell................................|ale-cpp-cspell| flawfinder............................|ale-cpp-flawfinder| + gitleaks..............................|ale-cpp-gitleaks| uncrustify............................|ale-cpp-uncrustify| c#......................................|ale-cs-options| clang-format..........................|ale-cs-clangformat| csc...................................|ale-cs-csc| cspell................................|ale-cs-cspell| dotnet-format.........................|ale-cs-dotnet-format| + gitleaks..............................|ale-cs-gitleaks| mcs...................................|ale-cs-mcs| mcsc..................................|ale-cs-mcsc| uncrustify............................|ale-cs-uncrustify| @@ -2943,14 +2969,16 @@ documented in additional help files. dockerfile_lint.......................|ale-dockerfile-dockerfile_lint| dockerlinter..........................|ale-dockerfile-dockerlinter| dprint................................|ale-dockerfile-dprint| + gitleaks..............................|ale-dockerfile-gitleaks| hadolint..............................|ale-dockerfile-hadolint| elixir..................................|ale-elixir-options| - mix...................................|ale-elixir-mix| - mix_format............................|ale-elixir-mix-format| - dialyxir..............................|ale-elixir-dialyxir| - elixir-ls.............................|ale-elixir-elixir-ls| credo.................................|ale-elixir-credo| cspell................................|ale-elixir-cspell| + dialyxir..............................|ale-elixir-dialyxir| + elixir-ls.............................|ale-elixir-elixir-ls| + gitleaks..............................|ale-elixir-gitleaks| + mix...................................|ale-elixir-mix| + mix_format............................|ale-elixir-mix-format| elm.....................................|ale-elm-options| elm-format............................|ale-elm-elm-format| elm-ls................................|ale-elm-elm-ls| @@ -2982,6 +3010,7 @@ documented in additional help files. go......................................|ale-go-options| bingo.................................|ale-go-bingo| cspell................................|ale-go-cspell| + gitleaks..............................|ale-go-gitleaks| gobuild...............................|ale-go-gobuild| gofmt.................................|ale-go-gofmt| gofumpt...............................|ale-go-gofumpt| @@ -3007,22 +3036,23 @@ documented in additional help files. ember-template-lint...................|ale-handlebars-embertemplatelint| haskell.................................|ale-haskell-options| brittany..............................|ale-haskell-brittany| + cabal-ghc.............................|ale-haskell-cabal-ghc| cspell................................|ale-haskell-cspell| floskell..............................|ale-haskell-floskell| + fourmolu..............................|ale-haskell-fourmolu| ghc...................................|ale-haskell-ghc| ghc-mod...............................|ale-haskell-ghc-mod| - cabal-ghc.............................|ale-haskell-cabal-ghc| + gitleaks..............................|ale-haskell-gitleaks| hdevtools.............................|ale-haskell-hdevtools| hfmt..................................|ale-haskell-hfmt| + hie...................................|ale-haskell-hie| hindent...............................|ale-haskell-hindent| hlint.................................|ale-haskell-hlint| hls...................................|ale-haskell-hls| + ormolu................................|ale-haskell-ormolu| stack-build...........................|ale-haskell-stack-build| stack-ghc.............................|ale-haskell-stack-ghc| stylish-haskell.......................|ale-haskell-stylish-haskell| - hie...................................|ale-haskell-hie| - ormolu................................|ale-haskell-ormolu| - fourmolu..............................|ale-haskell-fourmolu| hcl.....................................|ale-hcl-options| packer-fmt............................|ale-hcl-packer-fmt| terraform-fmt.........................|ale-hcl-terraform-fmt| @@ -3032,6 +3062,7 @@ documented in additional help files. angular...............................|ale-html-angular| cspell................................|ale-html-cspell| fecs..................................|ale-html-fecs| + gitleaks..............................|ale-html-gitleaks| html-beautify.........................|ale-html-beautify| htmlhint..............................|ale-html-htmlhint| prettier..............................|ale-html-prettier| @@ -3052,11 +3083,12 @@ documented in additional help files. checkstyle............................|ale-java-checkstyle| clang-format..........................|ale-java-clangformat| cspell................................|ale-java-cspell| - javac.................................|ale-java-javac| + eclipselsp............................|ale-java-eclipselsp| + gitleaks..............................|ale-java-gitleaks| google-java-format....................|ale-java-google-java-format| - pmd...................................|ale-java-pmd| + javac.................................|ale-java-javac| javalsp...............................|ale-java-javalsp| - eclipselsp............................|ale-java-eclipselsp| + pmd...................................|ale-java-pmd| uncrustify............................|ale-java-uncrustify| javascript..............................|ale-javascript-options| clang-format..........................|ale-javascript-clangformat| @@ -3066,6 +3098,7 @@ documented in additional help files. eslint................................|ale-javascript-eslint| fecs..................................|ale-javascript-fecs| flow..................................|ale-javascript-flow| + gitleaks..............................|ale-javascript-gitleaks| importjs..............................|ale-javascript-importjs| jscs..................................|ale-javascript-jscs| jshint................................|ale-javascript-jshint| @@ -3080,6 +3113,7 @@ documented in additional help files. dprint................................|ale-json-dprint| eslint................................|ale-json-eslint| fixjson...............................|ale-json-fixjson| + gitleaks..............................|ale-json-gitleaks| jsonlint..............................|ale-json-jsonlint| jq....................................|ale-json-jq| prettier..............................|ale-json-prettier| @@ -3110,6 +3144,7 @@ documented in additional help files. llc...................................|ale-llvm-llc| lua.....................................|ale-lua-options| cspell................................|ale-lua-cspell| + gitleaks..............................|ale-lua-gitleaks| lua-format............................|ale-lua-lua-format| lua-language-server...................|ale-lua-lua-language-server| luac..................................|ale-lua-luac| @@ -3122,6 +3157,7 @@ documented in additional help files. markdown................................|ale-markdown-options| cspell................................|ale-markdown-cspell| dprint................................|ale-markdown-dprint| + gitleaks..............................|ale-markdown-gitleaks| markdownlint..........................|ale-markdown-markdownlint| marksman..............................|ale-markdown-marksman| mdl...................................|ale-markdown-mdl| @@ -3183,6 +3219,7 @@ documented in additional help files. perl6.................................|ale-perl6-perl6| php.....................................|ale-php-options| cspell................................|ale-php-cspell| + gitleaks..............................|ale-php-gitleaks| langserver............................|ale-php-langserver| phan..................................|ale-php-phan| phpcbf................................|ale-php-phpcbf| @@ -3203,6 +3240,7 @@ documented in additional help files. ponyc.................................|ale-pony-ponyc| powershell..............................|ale-powershell-options| cspell................................|ale-powershell-cspell| + gitleaks..............................|ale-powershell-gitleaks| powershell............................|ale-powershell-powershell| psscriptanalyzer......................|ale-powershell-psscriptanalyzer| prolog..................................|ale-prolog-options| @@ -3234,6 +3272,7 @@ documented in additional help files. cspell................................|ale-python-cspell| flake8................................|ale-python-flake8| flakehell.............................|ale-python-flakehell| + gitleaks..............................|ale-python-gitleaks| isort.................................|ale-python-isort| mypy..................................|ale-python-mypy| prospector............................|ale-python-prospector| @@ -3269,10 +3308,12 @@ documented in additional help files. refmt.................................|ale-reasonml-refmt| rego....................................|ale-rego-options| cspell................................|ale-rego-cspell| + gitleaks..............................|ale-rego-gitleaks| opacheck..............................|ale-rego-opa-check| opafmt................................|ale-rego-opa-fmt-fixer| restructuredtext........................|ale-restructuredtext-options| cspell................................|ale-restructuredtext-cspell| + gitleaks..............................|ale-restructuredtext-gitleaks| textlint..............................|ale-restructuredtext-textlint| write-good............................|ale-restructuredtext-write-good| robot...................................|ale-robot-options| @@ -3281,6 +3322,7 @@ documented in additional help files. brakeman..............................|ale-ruby-brakeman| cspell................................|ale-ruby-cspell| debride...............................|ale-ruby-debride| + gitleaks..............................|ale-ruby-gitleaks| prettier..............................|ale-ruby-prettier| rails_best_practices..................|ale-ruby-rails_best_practices| reek..................................|ale-ruby-reek| @@ -3295,6 +3337,7 @@ documented in additional help files. analyzer..............................|ale-rust-analyzer| cargo.................................|ale-rust-cargo| cspell................................|ale-rust-cspell| + gitleaks..............................|ale-rust-gitleaks| rls...................................|ale-rust-rls| rustc.................................|ale-rust-rustc| rustfmt...............................|ale-rust-rustfmt| @@ -3305,6 +3348,7 @@ documented in additional help files. stylelint.............................|ale-sass-stylelint| scala...................................|ale-scala-options| cspell................................|ale-scala-cspell| + gitleaks..............................|ale-scala-gitleaks| metals................................|ale-scala-metals| sbtserver.............................|ale-scala-sbtserver| scalafmt..............................|ale-scala-scalafmt| @@ -3316,6 +3360,7 @@ documented in additional help files. sh......................................|ale-sh-options| bashate...............................|ale-sh-bashate| cspell................................|ale-sh-cspell| + gitleaks..............................|ale-sh-gitleaks| sh-language-server....................|ale-sh-language-server| shell.................................|ale-sh-shell| shellcheck............................|ale-sh-shellcheck| @@ -3330,6 +3375,7 @@ documented in additional help files. rpmlint...............................|ale-spec-rpmlint| sql.....................................|ale-sql-options| dprint................................|ale-sql-dprint| + gitleaks..............................|ale-sql-gitleaks| pgformatter...........................|ale-sql-pgformatter| sqlfluff..............................|ale-sql-sqlfluff| sqlfmt................................|ale-sql-sqlfmt| @@ -3344,6 +3390,7 @@ documented in additional help files. swift...................................|ale-swift-options| apple-swift-format....................|ale-swift-apple-swift-format| cspell................................|ale-swift-cspell| + gitleaks..............................|ale-swift-gitleaks| sourcekitlsp..........................|ale-swift-sourcekitlsp| systemd.................................|ale-systemd-options| systemd-analyze.......................|ale-systemd-analyze| @@ -3351,6 +3398,7 @@ documented in additional help files. nagelfar..............................|ale-tcl-nagelfar| terraform...............................|ale-terraform-options| checkov...............................|ale-terraform-checkov| + gitleaks..............................|ale-terraform-gitleaks| terraform-fmt-fixer...................|ale-terraform-fmt-fixer| terraform.............................|ale-terraform-terraform| terraform-ls..........................|ale-terraform-terraform-ls| @@ -3360,14 +3408,17 @@ documented in additional help files. tex.....................................|ale-tex-options| chktex................................|ale-tex-chktex| cspell................................|ale-tex-cspell| + gitleaks..............................|ale-tex-gitleaks| lacheck...............................|ale-tex-lacheck| latexindent...........................|ale-tex-latexindent| texlab................................|ale-tex-texlab| texinfo.................................|ale-texinfo-options| cspell................................|ale-texinfo-cspell| + gitleaks..............................|ale-texinfo-gitleaks| write-good............................|ale-texinfo-write-good| text....................................|ale-text-options| cspell................................|ale-text-cspell| + gitleaks..............................|ale-text-gitleaks| textlint..............................|ale-text-textlint| write-good............................|ale-text-write-good| thrift..................................|ale-thrift-options| @@ -3380,6 +3431,7 @@ documented in additional help files. deno..................................|ale-typescript-deno| dprint................................|ale-typescript-dprint| eslint................................|ale-typescript-eslint| + gitleaks..............................|ale-typescript-gitleaks| prettier..............................|ale-typescript-prettier| standard..............................|ale-typescript-standard| tslint................................|ale-typescript-tslint| @@ -3405,10 +3457,12 @@ documented in additional help files. vim help................................|ale-vim-help-options| write-good............................|ale-vim-help-write-good| vim.....................................|ale-vim-options| + gitleaks..............................|ale-vim-gitleaks| vimls.................................|ale-vim-vimls| vint..................................|ale-vim-vint| vue.....................................|ale-vue-options| cspell................................|ale-vue-cspell| + gitleaks..............................|ale-vue-gitleaks| prettier..............................|ale-vue-prettier| vls...................................|ale-vue-vls| volar.................................|ale-vue-volar| @@ -3416,12 +3470,14 @@ documented in additional help files. naga..................................|ale-wgsl-naga| xhtml...................................|ale-xhtml-options| cspell................................|ale-xhtml-cspell| + gitleaks..............................|ale-xhtml-gitleaks| write-good............................|ale-xhtml-write-good| xml.....................................|ale-xml-options| xmllint...............................|ale-xml-xmllint| yaml....................................|ale-yaml-options| actionlint............................|ale-yaml-actionlint| circleci..............................|ale-yaml-circleci| + gitleaks..............................|ale-yaml-gitleaks| prettier..............................|ale-yaml-prettier| spectral..............................|ale-yaml-spectral| swaglint..............................|ale-yaml-swaglint| @@ -3435,6 +3491,7 @@ documented in additional help files. zeek....................................|ale-zeek-options| zeek..................................|ale-zeek-zeek| zig.....................................|ale-zig-options| + gitleaks..............................|ale-zig-gitleaks| zigfmt................................|ale-zig-zigfmt| zls...................................|ale-zig-zls| diff --git a/supported-tools.md b/supported-tools.md index 72b456710e..da0dd80907 100644 --- a/supported-tools.md +++ b/supported-tools.md @@ -25,10 +25,12 @@ formatting. * [ada_language_server](https://github.com/AdaCore/ada_language_server) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [gcc](https://gcc.gnu.org) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [gnatpp](https://docs.adacore.com/gnat_ugn-docs/html/gnat_ugn/gnat_ugn/gnat_utility_programs.html#the-gnat-pretty-printer-gnatpp) :floppy_disk: * Ansible * [ansible-language-server](https://github.com/ansible/ansible-language-server/) * [ansible-lint](https://github.com/willthames/ansible-lint) :floppy_disk: + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * API Blueprint * [drafter](https://github.com/apiaryio/drafter) * APKBUILD @@ -37,6 +39,7 @@ formatting. * AsciiDoc * [alex](https://github.com/get-alex/alex) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [languagetool](https://languagetool.org/) :floppy_disk: * [proselint](http://proselint.com/) * [redpen](http://redpen.cc/) @@ -53,8 +56,9 @@ formatting. * Bash * [bashate](https://github.com/openstack/bashate) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [language-server](https://github.com/mads-hartmann/bash-language-server) - * shell [-n flag](https://www.gnu.org/software/bash/manual/bash.html#index-set) + * [shell](https://www.gnu.org/software/bash/manual/bash.html#index-set) -n flag * [shellcheck](https://www.shellcheck.net/) * [shfmt](https://github.com/mvdan/sh) * Bats @@ -84,12 +88,14 @@ formatting. * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [flawfinder](https://www.dwheeler.com/flawfinder/) * [gcc](https://gcc.gnu.org/) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [uncrustify](https://github.com/uncrustify/uncrustify) * C# * [clang-format](https://clang.llvm.org/docs/ClangFormat.html) * [csc](http://www.mono-project.com/docs/about-mono/languages/csharp/) :floppy_disk: see:`help ale-cs-csc` for details and configuration * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [dotnet-format](https://github.com/dotnet/format) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [mcs](http://www.mono-project.com/docs/about-mono/languages/csharp/) see:`help ale-cs-mcs` for details * [mcsc](http://www.mono-project.com/docs/about-mono/languages/csharp/) :floppy_disk: see:`help ale-cs-mcsc` for details and configuration * [uncrustify](https://github.com/uncrustify/uncrustify) @@ -108,6 +114,7 @@ formatting. * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [flawfinder](https://www.dwheeler.com/flawfinder/) * [gcc](https://gcc.gnu.org/) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [uncrustify](https://github.com/uncrustify/uncrustify) * Cairo * [starknet](https://starknet.io/docs) @@ -170,6 +177,7 @@ formatting. * [dockerfile_lint](https://github.com/projectatomic/dockerfile_lint) * [dockerlinter](https://github.com/buddy-works/dockerfile-linter) * [dprint](https://dprint.dev) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [hadolint](https://github.com/hadolint/hadolint) * Elixir * [credo](https://github.com/rrrene/credo) @@ -177,6 +185,7 @@ formatting. * [dialyxir](https://github.com/jeremyjh/dialyxir) * [dogma](https://github.com/lpil/dogma) :floppy_disk: * [elixir-ls](https://github.com/elixir-lsp/elixir-ls) :warning: + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [mix](https://hexdocs.pm/mix/Mix.html) :warning: :floppy_disk: * Elm * [elm-format](https://github.com/avh4/elm-format) @@ -214,6 +223,7 @@ formatting. * Go * [bingo](https://github.com/saibing/bingo) :warning: * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) :warning: + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [go build](https://golang.org/cmd/go/) :warning: :floppy_disk: * [go mod](https://golang.org/cmd/go/) :warning: :floppy_disk: * [go vet](https://golang.org/cmd/vet/) :floppy_disk: @@ -250,6 +260,7 @@ formatting. * [fourmolu](https://github.com/fourmolu/fourmolu) * [ghc](https://www.haskell.org/ghc/) * [ghc-mod](https://github.com/DanielG/ghc-mod) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [hdevtools](https://hackage.haskell.org/package/hdevtools) * [hfmt](https://github.com/danstiner/hfmt) * [hie](https://github.com/haskell/haskell-ide-engine) @@ -270,6 +281,7 @@ formatting. * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [eslint](https://github.com/BenoitZugmeyer/eslint-plugin-html) * [fecs](http://fecs.baidu.com/) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [html-beautify](https://beautifier.io/) * [htmlhint](http://htmlhint.com/) * [prettier](https://github.com/prettier/prettier) @@ -291,6 +303,7 @@ formatting. * [clang-format](https://clang.llvm.org/docs/ClangFormat.html) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [eclipselsp](https://github.com/eclipse/eclipse.jdt.ls) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [google-java-format](https://github.com/google/google-java-format) * [javac](http://www.oracle.com/technetwork/java/javase/downloads/index.html) * [javalsp](https://github.com/georgewfraser/vscode-javac) @@ -303,6 +316,7 @@ formatting. * [eslint](http://eslint.org/) * [fecs](http://fecs.baidu.com/) * [flow](https://flowtype.org/) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [jscs](https://jscs-dev.github.io/) * [jshint](http://jshint.com/) * [prettier](https://github.com/prettier/prettier) @@ -318,6 +332,7 @@ formatting. * [dprint](https://dprint.dev) * [eslint](http://eslint.org/) :warning: * [fixjson](https://github.com/rhysd/fixjson) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [jq](https://stedolan.github.io/jq/) :warning: * [jsonlint](https://github.com/zaach/jsonlint) * [prettier](https://github.com/prettier/prettier) @@ -339,6 +354,7 @@ formatting. * [alex](https://github.com/get-alex/alex) * [chktex](http://www.nongnu.org/chktex/) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [lacheck](https://www.ctan.org/pkg/lacheck) * [proselint](http://proselint.com/) * [redpen](http://redpen.cc/) @@ -354,6 +370,7 @@ formatting. * [llc](https://llvm.org/docs/CommandGuide/llc.html) * Lua * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [lua-format](https://github.com/Koihik/LuaFormatter) * [lua-language-server](https://github.com/LuaLS/lua-language-server) * [luac](https://www.lua.org/manual/5.1/luac.html) @@ -371,6 +388,7 @@ formatting. * Markdown * [alex](https://github.com/get-alex/alex) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [languagetool](https://languagetool.org/) :floppy_disk: * [markdownlint](https://github.com/DavidAnson/markdownlint) :floppy_disk: * [marksman](https://github.com/artempyanykh/marksman) @@ -442,6 +460,7 @@ formatting. * [perl6 -c](https://perl6.org) :warning: * PHP * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [intelephense](https://github.com/bmewburn/intelephense-docs) * [langserver](https://github.com/felixfbecker/php-language-server) * [phan](https://github.com/phan/phan) see `:help ale-php-phan` to instructions @@ -468,6 +487,7 @@ formatting. * [ponyc](https://github.com/ponylang/ponyc) * PowerShell * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [powershell](https://github.com/PowerShell/PowerShell) * [psscriptanalyzer](https://github.com/PowerShell/PSScriptAnalyzer) * Prolog @@ -497,6 +517,7 @@ formatting. * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [flake8](http://flake8.pycqa.org/en/latest/) * [flakehell](https://github.com/flakehell/flakehell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [isort](https://github.com/timothycrosley/isort) * [mypy](http://mypy-lang.org/) * [prospector](https://github.com/PyCQA/prospector) :warning: :floppy_disk: @@ -536,11 +557,13 @@ formatting. * [refmt](https://github.com/reasonml/reason-cli) * Rego * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [opacheck](https://www.openpolicyagent.org/docs/latest/cli/#opa-check) * [opafmt](https://www.openpolicyagent.org/docs/latest/cli/#opa-fmt) * reStructuredText * [alex](https://github.com/get-alex/alex) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [proselint](http://proselint.com/) * [redpen](http://redpen.cc/) * [rstcheck](https://github.com/myint/rstcheck) @@ -555,6 +578,7 @@ formatting. * [brakeman](http://brakemanscanner.org/) :floppy_disk: * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [debride](https://github.com/seattlerb/debride) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [prettier](https://github.com/prettier/plugin-ruby) * [rails_best_practices](https://github.com/flyerhzm/rails_best_practices) :floppy_disk: * [reek](https://github.com/troessner/reek) @@ -568,6 +592,7 @@ formatting. * Rust * [cargo](https://github.com/rust-lang/cargo) :floppy_disk: (see `:help ale-integration-rust` for configuration instructions) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [rls](https://github.com/rust-lang-nursery/rls) :warning: * [rust-analyzer](https://github.com/rust-analyzer/rust-analyzer) :warning: * [rustc](https://www.rust-lang.org/) :warning: @@ -580,6 +605,7 @@ formatting. * Scala * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) * [fsc](https://www.scala-lang.org/old/sites/default/files/linuxsoft_archives/docu/files/tools/fsc.html) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [metals](https://scalameta.org/metals/) * [sbtserver](https://www.scala-sbt.org/1.x/docs/sbt-server.html) * [scalac](http://scala-lang.org) @@ -600,6 +626,7 @@ formatting. * [solium](https://github.com/duaraghav8/Solium) * SQL * [dprint](https://dprint.dev) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [pgformatter](https://github.com/darold/pgFormatter) * [sql-lint](https://github.com/joereynolds/sql-lint) * [sqlfluff](https://github.com/sqlfluff/sqlfluff) @@ -616,6 +643,7 @@ formatting. * Swift * [Apple swift-format](https://github.com/apple/swift-format) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [sourcekit-lsp](https://github.com/apple/sourcekit-lsp) * [swiftformat](https://github.com/nicklockwood/SwiftFormat) * [swiftlint](https://github.com/realm/SwiftLint) @@ -625,6 +653,7 @@ formatting. * [nagelfar](http://nagelfar.sourceforge.net) :floppy_disk: * Terraform * [checkov](https://github.com/bridgecrewio/checkov) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [terraform](https://github.com/hashicorp/terraform) * [terraform-fmt-fixer](https://github.com/hashicorp/terraform) * [terraform-ls](https://github.com/hashicorp/terraform-ls) @@ -634,11 +663,13 @@ formatting. * Texinfo * [alex](https://github.com/get-alex/alex) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [proselint](http://proselint.com/) * [write-good](https://github.com/btford/write-good) * Text * [alex](https://github.com/get-alex/alex) :warning: * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [languagetool](https://languagetool.org/) :floppy_disk: * [proselint](http://proselint.com/) :warning: * [redpen](http://redpen.cc/) :warning: @@ -656,6 +687,7 @@ formatting. * [dprint](https://dprint.dev/) * [eslint](http://eslint.org/) * [fecs](http://fecs.baidu.com/) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [prettier](https://github.com/prettier/prettier) * [standard](http://standardjs.com/) * [tslint](https://github.com/palantir/tslint) @@ -679,6 +711,7 @@ formatting. * [vcom](https://www.mentor.com/products/fv/questa/) * [xvhdl](https://www.xilinx.com/products/design-tools/vivado.html) * Vim + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [vimls](https://github.com/iamcco/vim-language-server) * [vint](https://github.com/Kuniwak/vint) * Vim help @@ -687,6 +720,7 @@ formatting. * [write-good](https://github.com/btford/write-good) :warning: * Vue * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [prettier](https://github.com/prettier/prettier) * [vls](https://github.com/vuejs/vetur/tree/master/server) * [volar](https://github.com/johnsoncodehk/volar) @@ -695,6 +729,7 @@ formatting. * XHTML * [alex](https://github.com/get-alex/alex) * [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [proselint](http://proselint.com/) * [write-good](https://github.com/btford/write-good) * XML @@ -703,6 +738,7 @@ formatting. * [actionlint](https://github.com/rhysd/actionlint) :warning: * [circleci](https://circleci.com/docs/2.0/local-cli) :floppy_disk: :warning: * [gitlablint](https://github.com/elijah-roberts/gitlab-lint) + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [prettier](https://github.com/prettier/prettier) * [spectral](https://github.com/stoplightio/spectral) * [swaglint](https://github.com/byCedric/swaglint) :warning: @@ -715,5 +751,6 @@ formatting. * Zeek * [zeek](http://zeek.org) :floppy_disk: * Zig + * [gitleaks](https://github.com/gitleaks/gitleaks) :floppy_disk: * [zigfmt](https://github.com/ziglang/zig) * [zls](https://github.com/zigtools/zls) diff --git a/test/handler/test_gitleaks_handler.vader b/test/handler/test_gitleaks_handler.vader new file mode 100644 index 0000000000..3b2e8b4d9b --- /dev/null +++ b/test/handler/test_gitleaks_handler.vader @@ -0,0 +1,12 @@ +Execute(The gitleaks handler should handle gitleaks output): + AssertEqual + \ [ + \ { + \ 'lnum': 1, + \ 'type': 'E', + \ 'text': 'generic-api-key', + \ }, + \ ], + \ ale#handlers#gitleaks#Handle(bufnr(''), + \ 'Fingerprint: /:generic-api-key:1' + \) diff --git a/test/linter/test_gitleaks.vader b/test/linter/test_gitleaks.vader new file mode 100644 index 0000000000..a0a6b8d7f0 --- /dev/null +++ b/test/linter/test_gitleaks.vader @@ -0,0 +1,37 @@ +Before: + call ale#assert#SetUpLinterTest('tex', 'gitleaks') + + " We have to manually do our own variable reset because SetUpLinterTest calls + " ale#assert#ResetVariables, which specifically only resets variables that + " begin with ale__, per https://github.com/dense-analysis/ale/blob/76c2293e68a6cad3b192062743d25b8daa082205/autoload/ale/assert.vim#L256 + " + " Took a lot of debugging and reading both junegunn/vader.vim and most ALE + " files to find this behavior + + Save g:ale_gitleaks_executable + Save g:ale_gitleaks_options + + unlet! g:ale_gitleaks_executable + unlet! g:ale_gitleaks_options + + let g:ale_gitleaks_executable = 'gitleaks' + let g:ale_gitleaks_options = '' + +After: + call ale#assert#TearDownLinterTest() + +Execute(The correct executable should be used): + AssertLinter + \ 'gitleaks', + \ ale#Escape('gitleaks') + \ . ' detect --no-git --no-color --no-banner --redact --verbose --source=%s' + +Execute(Additional gitleaks options should be configurable): + call ale#test#SetFilename('../test-files/dummy') + + let g:ale_gitleaks_options = '--foobar' + + AssertLinter + \ 'gitleaks', + \ ale#Escape('gitleaks') + \ . ' detect --no-git --no-color --no-banner --redact --verbose --source=%s --foobar'