Add cspell Linter (#3981)

* Add cspell linter

Add cspell linter, with the languages it supports.

Signed-off-by: David Houston <houstdav000@gmail.com>

* Add cspell Global Variables Documentation

Add documentation to /doc/ale.txt with cspell configuration options.

Signed-off-by: David Houston <houstdav000@gmail.com>

* Add cspell to docs, Minor Cleanup

Add cspell for each supported language, adding some spaces and removing
others when caught navigating the file.

Signed-off-by: David Houston <houstdav000@gmail.com>
This commit is contained in:
David Houston 2021-11-18 17:41:05 -05:00 committed by GitHub
parent aee0cc45be
commit ea643b97ab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
71 changed files with 689 additions and 62 deletions

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Ada files.
call ale#handlers#cspell#DefineLinter('ada')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for ASCIIDoc files.
call ale#handlers#cspell#DefineLinter('asciidoc')

5
ale_linters/c/cspell.vim Normal file
View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for C files.
call ale#handlers#cspell#DefineLinter('c')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for C++ files.
call ale#handlers#cspell#DefineLinter('cpp')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for C# files.
call ale#handlers#cspell#DefineLinter('cs')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for CSS files.
call ale#handlers#cspell#DefineLinter('css')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Elixir files.
call ale#handlers#cspell#DefineLinter('elixir')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Go files.
call ale#handlers#cspell#DefineLinter('go')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Haskell files.
call ale#handlers#cspell#DefineLinter('haskell')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for help files.
call ale#handlers#cspell#DefineLinter('help')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for HTML files.
call ale#handlers#cspell#DefineLinter('html')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Java files.
call ale#handlers#cspell#DefineLinter('java')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for JavaScript files.
call ale#handlers#cspell#DefineLinter('javascript')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for JSON files.
call ale#handlers#cspell#DefineLinter('json')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Lua files.
call ale#handlers#cspell#DefineLinter('lua')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Markdown files.
call ale#handlers#cspell#DefineLinter('markdown')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for PHP files.
call ale#handlers#cspell#DefineLinter('php')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for PowerShell files.
call ale#handlers#cspell#DefineLinter('powershell')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Python files.
call ale#handlers#cspell#DefineLinter('python')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for ReStructuredText files.
call ale#handlers#cspell#DefineLinter('rst')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Ruby files.
call ale#handlers#cspell#DefineLinter('ruby')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Rust files.
call ale#handlers#cspell#DefineLinter('rust')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Scala files.
call ale#handlers#cspell#DefineLinter('scala')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for shell scripts.
call ale#handlers#cspell#DefineLinter('sh')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Swift files.
call ale#handlers#cspell#DefineLinter('swift')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for TeX files.
call ale#handlers#cspell#DefineLinter('tex')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for TeXInfo files.
call ale#handlers#cspell#DefineLinter('texinfo')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for general text files.
call ale#handlers#cspell#DefineLinter('text')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for TypeScript files.
call ale#handlers#cspell#DefineLinter('typescript')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for Vue files.
call ale#handlers#cspell#DefineLinter('vue')

View File

@ -0,0 +1,5 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: cspell support for XHTML files.
call ale#handlers#cspell#DefineLinter('xhtml')

View File

@ -0,0 +1,54 @@
scriptencoding utf-8
" Author: David Houston <houstdav000>
" Description: Define a handler function for cspell's output
function! ale#handlers#cspell#GetExecutable(buffer) abort
return ale#path#FindExecutable(a:buffer,
\ 'cspell', [
\ 'node_modules/.bin/cspell',
\ 'node_modules/cspell/bin.js',
\ ]
\)
endfunction
function! ale#handlers#cspell#GetCommand(buffer) abort
let l:executable = ale#handlers#cspell#GetExecutable(a:buffer)
let l:options = ale#Var(a:buffer, 'cspell_options')
return ale#node#Executable(a:buffer, l:executable)
\ . ' lint --no-color --no-progress --no-summary'
\ . ale#Pad(l:options)
\ . ' -- stdin'
endfunction
function! ale#handlers#cspell#Handle(buffer, lines) abort
" Look for lines like the following:
"
" /home/user/repos/ale/README.md:723:48 - Unknown word (stylelint)
let l:pattern = '\v^.*:(\d+):(\d+) - (.*)$'
let l:output = []
for l:match in ale#util#GetMatches(a:lines, l:pattern)
call add(l:output, {
\ 'lnum': l:match[1] + 0,
\ 'col': l:match[2] + 0,
\ 'text': l:match[3],
\ 'type': 'W',
\})
endfor
return l:output
endfunction
function! ale#handlers#cspell#DefineLinter(filetype) abort
call ale#Set('cspell_executable', 'cspell')
call ale#Set('cspell_options', '')
call ale#Set('cspell_use_global', get(g:, 'ale_use_global_executables', 0))
call ale#linter#Define(a:filetype, {
\ 'name': 'cspell',
\ 'executable': function('ale#handlers#cspell#GetExecutable'),
\ 'command': function('ale#handlers#cspell#GetCommand'),
\ 'callback': 'ale#handlers#cspell#Handle',
\})
endfunction

View File

@ -2,6 +2,11 @@
ALE Ada Integration *ale-ada-options*
===============================================================================
cspell *ale-ada-cspell*
See |ale-cspell-options|
===============================================================================
gcc *ale-ada-gcc*

View File

@ -2,6 +2,12 @@
ALE AsciiDoc Integration *ale-asciidoc-options*
===============================================================================
cspell *ale-asciidoc-cspell*
See |ale-cspell-options|
===============================================================================
write-good *ale-asciidoc-write-good*

View File

@ -352,6 +352,12 @@ g:ale_cpp_cquery_cache_directory *g:ale_c_cquery_cache_directory*
cache.
===============================================================================
cspell *ale-c-cspell*
See |ale-cspell-options|
===============================================================================
flawfinder *ale-c-flawfinder*

View File

@ -308,6 +308,12 @@ g:ale_cpp_cquery_cache_directory *g:ale_cpp_cquery_cache_directory*
cache.
===============================================================================
cspell *ale-cpp-cspell*
See |ale-cspell-options|
===============================================================================
flawfinder *ale-cpp-flawfinder*

View File

@ -90,6 +90,12 @@ g:ale_cs_csc_assemblies *g:ale_cs_csc_assemblies*
\]
<
===============================================================================
cspell *ale-cs-cspell*
See |ale-cspell-options|
===============================================================================
dotnet-format *ale-cs-dotnet-format*

View File

@ -2,6 +2,12 @@
ALE CSS Integration *ale-css-options*
===============================================================================
cspell *ale-css-cspell*
See |ale-cspell-options|
===============================================================================
fecs *ale-css-fecs*

View File

@ -5,7 +5,6 @@ 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`
@ -18,6 +17,7 @@ g:ale_elixir_mix_options *g:ale_elixir_mix_options*
This variable can be changed to specify the mix executable.
===============================================================================
mix_format *ale-elixir-mix-format*
@ -30,6 +30,7 @@ g:ale_elixir_mix_format_options *g:ale_elixir_mix_format_options*
This variable can be changed to specify the mix options passed to the
mix_format fixer
===============================================================================
dialyxir *ale-elixir-dialyxir*
@ -45,6 +46,7 @@ configured on your project's `mix.exs`.
See https://github.com/jeremyjh/dialyxir#with-explaining-stuff for more
information.
===============================================================================
elixir-ls *ale-elixir-elixir-ls*
@ -72,6 +74,8 @@ g:ale_elixir_elixir_ls_config *g:ale_elixir_elixir_ls_config*
\ }
<
Consult the ElixirLS documentation for more information about settings.
===============================================================================
credo *ale-elixir-credo*
@ -79,18 +83,26 @@ Credo (https://github.com/rrrene/credo)
g:ale_elixir_credo_strict *g:ale_elixir_credo_strict*
Type: Integer
Default: 0
Type: |Integer|
Default: `0`
Tells credo to run in strict mode or suggest mode. Set variable to 1 to
enable --strict mode.
g:ale_elixir_credo_config_file g:ale_elixir_credo_config_file
Type: String
Default: ''
g:ale_elixir_credo_config_file *g:ale_elixir_credo_config_file*
Type: |String|
Default: `''`
Tells credo to use a custom configuration file.
===============================================================================
cspell *ale-elixir-cspell*
See |ale-cspell-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -39,7 +39,6 @@ g:ale_go_go111module *g:ale_go_go111module*
golang tools.
===============================================================================
bingo *ale-go-bingo*
@ -57,6 +56,11 @@ g:ale_go_bingo_options *g:ale_go_bingo_options*
Default: `''`
===============================================================================
cspell *ale-go-cspell*
See |ale-cspell-options|
===============================================================================
gobuild *ale-go-gobuild*
@ -151,6 +155,7 @@ g:ale_go_langserver_options *g:ale_go_langserver_options*
`-gocodecompletion` option is ignored because it is handled automatically
by the |g:ale_completion_enabled| variable.
===============================================================================
golines *ale-go-golines*
@ -169,6 +174,7 @@ g:ale_go_golines_options *g:ale_go_golines_options*
Additional options passed to the golines command. By default golines has
--max-length=100 (lines above 100 characters will be wrapped)
===============================================================================
golint *ale-go-golint*

View File

@ -13,6 +13,12 @@ g:ale_haskell_brittany_executable *g:ale_haskell_brittany_executable*
This variable can be changed to use a different executable for brittany.
===============================================================================
cspell *ale-haskell-cspell*
See |ale-cspell-options|
===============================================================================
floskell *ale-haskell-floskell*

12
doc/ale-help.txt Normal file
View File

@ -0,0 +1,12 @@
===============================================================================
ALE Help Integration *ale-help-options*
===============================================================================
cspell *ale-help-cspell*
See |ale-cspell-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -28,6 +28,11 @@ g:ale_html_angular_use_global *g:ale_html_angular_use_global*
See |ale-integrations-local-executables|
===============================================================================
cspell *ale-html-cspell*
See |ale-cspell-options|
===============================================================================
fecs *ale-html-fecs*

View File

@ -41,6 +41,12 @@ g:ale_java_checkstyle_options *g:ale_java_checkstyle_options*
configuration files set with |g:ale_java_checkstyle_config|.
===============================================================================
cspell *ale-java-cspell*
See |ale-cspell-options|
===============================================================================
javac *ale-java-javac*
@ -91,7 +97,6 @@ List type:
\ ]
<
===============================================================================
google-java-format *ale-java-google-java-format*
@ -190,6 +195,7 @@ The Java language server will look for the dependencies you specify in
`externalDependencies` array in your Maven and Gradle caches ~/.m2 and
~/.gradle.
===============================================================================
eclipselsp *ale-java-eclipselsp*
@ -218,8 +224,9 @@ g:ale_java_eclipselsp_path *g:ale_java_eclipselsp_path*
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).
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*
@ -261,7 +268,8 @@ g:ale_java_eclipselsp_javaagent *g:ale_java_eclipselsp_javaagent*
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:
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'
<

View File

@ -23,11 +23,18 @@ To this: >
/path/foo/bar/.eslintrc.js # extends: ["/path/foo/.base-eslintrc.js"]
<
===============================================================================
cspell *ale-javascript-cspell*
See |ale-cspell-options|
===============================================================================
deno *ale-javascript-deno*
Check the docs over at |ale-typescript-deno|.
===============================================================================
eslint *ale-javascript-eslint*

View File

@ -2,6 +2,12 @@
ALE JSON Integration *ale-json-options*
===============================================================================
cspell *ale-json-cspell*
See |ale-cspell-options|
===============================================================================
eslint *ale-json-eslint*

View File

@ -2,6 +2,9 @@
ALE LaTeX Integration *ale-latex-options*
===============================================================================
cspell *ale-latex-cspell*
===============================================================================
write-good *ale-latex-write-good*
@ -9,10 +12,10 @@ See |ale-write-good-options|
===============================================================================
textlint *ale-latex-textlint*
textlint *ale-latex-textlint*
See |ale-text-textlint|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -1,6 +1,13 @@
===============================================================================
ALE Lua Integration *ale-lua-options*
===============================================================================
cspell *ale-lua-cspell*
See |ale-cspell-options|
===============================================================================
lua-format *ale-lua-lua-format*
@ -11,6 +18,7 @@ g:ale_lua_lua_format_executable *g:ale_lua_lua_format_executable*
This variable can be changed to change the path to lua-format.
g:ale_lua_lua_format_options *g:ale_lua_lua_format_options*
*b:ale_lua_lua_format_options*
Type: |String|
@ -29,6 +37,7 @@ g:ale_lua_luac_executable *g:ale_lua_luac_executable*
This variable can be changed to change the path to luac.
===============================================================================
luacheck *ale-lua-luacheck*
@ -58,6 +67,7 @@ g:ale_lua_luafmt_executable *g:ale_lua_luafmt_executable*
This variable can be set to use a different executable for luafmt.
g:ale_lua_luafmt_options *g:ale_lua_luafmt_options*
*b:ale_lua_luafmt_options*
Type: |String|
@ -76,6 +86,7 @@ g:ale_lua_stylua_executable *g:ale_lua_stylua_executable*
This variable can be set to use a different executable for stylua.
g:ale_lua_stylua_options *g:ale_lua_stylua_options*
*b:ale_lua_stylua_options*
Type: |String|

View File

@ -2,6 +2,12 @@
ALE Markdown Integration *ale-markdown-options*
===============================================================================
cspell *ale-markdown-cspell*
See |ale-cspell-options|
===============================================================================
markdownlint *ale-markdown-markdownlint*
@ -98,4 +104,4 @@ See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -1,6 +1,13 @@
===============================================================================
ALE PHP Integration *ale-php-options*
===============================================================================
cspell *ale-php-cspell*
See |ale-cspell-options|
===============================================================================
langserver *ale-php-langserver*
@ -41,6 +48,7 @@ g:ale_php_phan_minimum_severity *g:ale_php_phan_minimum_severity*
This variable defines the minimum severity level.
g:ale_php_phan_executable *g:ale_php_phan_executable*
*b:ale_php_phan_executable*
Type: |String|
@ -48,6 +56,7 @@ g:ale_php_phan_executable *g:ale_php_phan_executable*
This variable sets executable used for phan or phan_client.
g:ale_php_phan_use_client *g:ale_php_phan_use_client*
*b:ale_php_phan_use_client*
Type: |Number|
@ -56,6 +65,7 @@ g:ale_php_phan_use_client *g:ale_php_phan_use_client*
This variable can be set to 1 to use the phan_client with phan daemon mode
instead of the phan standalone.
===============================================================================
phpcbf *ale-php-phpcbf*
@ -129,6 +139,7 @@ g:ale_php_phpcs_options *g:ale_php_phpcs_options*
This variable can be set to pass additional options to php-cs
===============================================================================
phpmd *ale-php-phpmd*

View File

@ -2,11 +2,17 @@
ALE PowerShell Integration *ale-powershell-options*
===============================================================================
cspell *ale-powershell-cspell*
See |ale-cspell-options|
===============================================================================
powershell *ale-powershell-powershell*
g:ale_powershell_powershell_executable *g:ale_powershell_powershell_executable*
*b:ale_powershell_powershell_executable*
g:ale_powershell_powershell_executable *g:ale_powershell_powershell_executable*
*b:ale_powershell_powershell_executable*
Type: String
Default: `'pwsh'`
@ -33,7 +39,7 @@ g:ale_powershell_psscriptanalyzer_executable
Default: `'pwsh'`
This variable sets executable used for powershell.
For example, on Windows you could set powershell to be Windows Powershell:
>
let g:ale_powershell_psscriptanalyzer_executable = 'powershell.exe'
@ -49,7 +55,7 @@ g:ale_powershell_psscriptanalyzer_module
for psscriptanalyzer invocation.
g:ale_powershell_psscriptanalyzer_exclusions
g:ale_powershell_psscriptanalyzer_exclusions
*g:ale_powershell_psscriptanalyzer_exclusions*
*b:ale_powershell_psscriptanalyzer_exclusions*
Type: |String|
@ -65,6 +71,5 @@ g:ale_powershell_psscriptanalyzer_exclusions
\ 'PSAvoidUsingWriteHost,PSAvoidGlobalVars'
<
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -10,6 +10,7 @@ g:ale_python_auto_pipenv *g:ale_python_auto_pipenv*
Detect whether the file is inside a pipenv, and set the executable to `pipenv`
if true. This is overridden by a manually-set executable.
g:ale_python_auto_poetry *g:ale_python_auto_poetry*
*b:ale_python_auto_poetry*
Type: |Number|
@ -18,6 +19,7 @@ g:ale_python_auto_poetry *g:ale_python_auto_poetry*
Detect whether the file is inside a poetry, and set the executable to `poetry`
if true. This is overridden by a manually-set executable.
===============================================================================
ALE Python Project Root Behavior *ale-python-root*
@ -229,6 +231,7 @@ g:ale_python_black_auto_pipenv *g:ale_python_black_auto_pipenv*
Detect whether the file is inside a pipenv, and set the executable to `pipenv`
if true. This is overridden by a manually-set executable.
g:ale_python_black_auto_poetry *g:ale_python_black_auto_poetry*
*b:ale_python_black_auto_poetry*
Type: |Number|
@ -237,6 +240,7 @@ g:ale_python_black_auto_poetry *g:ale_python_black_auto_poetry*
Detect whether the file is inside a poetry, and set the executable to `poetry`
if true. This is overridden by a manually-set executable.
g:ale_python_black_change_directory *g:ale_python_black_change_directory*
*b:ale_python_black_change_directory*
Type: |Number|
@ -248,13 +252,19 @@ g:ale_python_black_change_directory *g:ale_python_black_change_directory*
to control the directory Python is executed from yourself.
===============================================================================
cspell *ale-python-cspell*
See |ale-cspell-options|
===============================================================================
flake8 *ale-python-flake8*
g:ale_python_flake8_change_directory *g:ale_python_flake8_change_directory*
*b:ale_python_flake8_change_directory*
Type: |String|
Default: `project`
Default: `'project'`
If set to `project`, ALE will switch to the project root before checking file.
If set to `file`, ALE will switch to directory the Python file being
@ -320,6 +330,7 @@ g:ale_python_flake8_auto_poetry *g:ale_python_flake8_auto_poetry*
Detect whether the file is inside a poetry, and set the executable to `poetry`
if true. This is overridden by a manually-set executable.
===============================================================================
flakehell *ale-python-flakehell*
@ -384,6 +395,7 @@ g:ale_python_flakehell_auto_poetry *g:ale_python_flakehell_auto_poetry*
Detect whether the file is inside a poetry, and set the executable to `poetry`
if true. This is overridden by a manually-set executable.
===============================================================================
isort *ale-python-isort*
@ -504,7 +516,6 @@ g:ale_python_mypy_use_global *g:ale_python_mypy_use_global*
See |ale-integrations-local-executables|
===============================================================================
prospector *ale-python-prospector*
@ -569,7 +580,6 @@ g:ale_python_prospector_auto_poetry *g:ale_python_prospector_auto_poetry*
===============================================================================
pycodestyle *ale-python-pycodestyle*
g:ale_python_pycodestyle_executable *g:ale_python_pycodestyle_executable*
*b:ale_python_pycodestyle_executable*
Type: |String|
@ -619,7 +629,6 @@ g:ale_python_pycodestyle_auto_poetry *g:ale_python_pycodestyle_auto_poetry*
===============================================================================
pydocstyle *ale-python-pydocstyle*
g:ale_python_pydocstyle_executable *g:ale_python_pydocstyle_executable*
*b:ale_python_pydocstyle_executable*
Type: |String|
@ -669,7 +678,6 @@ g:ale_python_pydocstyle_auto_poetry *g:ale_python_pydocstyle_auto_poetry*
===============================================================================
pyflakes *ale-python-pyflakes*
g:ale_python_pyflakes_executable *g:ale_python_pyflakes_executable*
*b:ale_python_pyflakes_executable*
Type: |String|
@ -925,6 +933,7 @@ g:ale_python_pylsp_options *g:ale_python_pylsp_options
An example stragety for installing `pylsp`:
`python3 -m pip install --user pylsp`
===============================================================================
pyre *ale-python-pyre*

View File

@ -2,6 +2,12 @@
ALE reStructuredText Integration *ale-restructuredtext-options*
===============================================================================
cspell *ale-restructuredtext-cspell*
See |ale-cspell-options|
===============================================================================
textlint *ale-restructuredtext-textlint*
@ -16,6 +22,7 @@ See: https://github.com/jimo1001/docutils-ast-writer
See |ale-text-textlint|
===============================================================================
write-good *ale-restructuredtext-write-good*
@ -23,4 +30,4 @@ See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -21,6 +21,13 @@ g:ale_ruby_brakeman_options *g:ale_ruby_brakeman_options*
The contents of this variable will be passed through to brakeman.
===============================================================================
cspell *ale-ruby-cspell*
See |ale-cspell-options|
===============================================================================
debride *ale-ruby-debride*
@ -212,7 +219,5 @@ g:ale_ruby_standardrb_options *g:ale_ruby_standardrb_options*
This variable can be changed to modify flags given to standardrb.
===============================================================================
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -145,8 +145,7 @@ g:ale_rust_cargo_avoid_whole_workspace *g:ale_rust_cargo_avoid_whole_workspace*
in the crate's directory. Otherwise, behave as usual.
g:ale_rust_cargo_use_clippy
*g:ale_rust_cargo_use_clippy*
g:ale_rust_cargo_use_clippy *g:ale_rust_cargo_use_clippy*
*b:ale_rust_cargo_use_clippy*
Type: |Number|
Default: `0`
@ -163,8 +162,7 @@ g:ale_rust_cargo_use_clippy
let g:ale_rust_cargo_use_clippy = executable('cargo-clippy')
<
g:ale_rust_cargo_clippy_options
*g:ale_rust_cargo_clippy_options*
g:ale_rust_cargo_clippy_options *g:ale_rust_cargo_clippy_options*
*b:ale_rust_cargo_clippy_options*
Type: |String|
@ -175,8 +173,7 @@ g:ale_rust_cargo_clippy_options
only `cargo clippy` supports (e.g. `--deny`).
g:ale_rust_cargo_target_dir
*g:ale_rust_cargo_target_dir*
g:ale_rust_cargo_target_dir *g:ale_rust_cargo_target_dir*
*b:ale_rust_cargo_target_dir*
Type: |String|
@ -187,6 +184,12 @@ g:ale_rust_cargo_target_dir
running `cargo` commands manually while ALE is performing its checks.
===============================================================================
cspell *ale-rust-cspell*
See |ale-cspell-options|
===============================================================================
rls *ale-rust-rls*

View File

@ -2,6 +2,12 @@
ALE Scala Integration *ale-scala-options*
===============================================================================
cspell *ale-scala-cspell*
See |ale-cspell-options|
===============================================================================
metals *ale-scala-metals*

View File

@ -25,6 +25,12 @@ g:ale_sh_bashate_options *g:ale_sh_bashate_options*
let g:ale_sh_bashate_options = '-i E003'
<
===============================================================================
cspell *ale-sh-cspell*
See |ale-cspell-options|
===============================================================================
sh-language-server *ale-sh-language-server*

View File

@ -14,6 +14,7 @@ Notes:
* Ada
* `ada_language_server`
* `cspell`
* `gcc`
* `gnatpp`
* Ansible
@ -25,6 +26,7 @@ Notes:
* `secfixes-check`
* AsciiDoc
* `alex`
* `cspell`
* `languagetool`!!
* `proselint`
* `redpen`
@ -39,6 +41,7 @@ Notes:
* `gawk`
* Bash
* `bashate`
* `cspell`
* `language-server`
* `shell` (-n flag)
* `shellcheck`
@ -63,11 +66,13 @@ Notes:
* `cppcheck`
* `cpplint`!!
* `cquery`
* `cspell`
* `flawfinder`
* `gcc` (`cc`)
* `uncrustify`
* C#
* `csc`!!
* `cspell`
* `dotnet-format`
* `mcs`
* `mcsc`!!
@ -84,6 +89,7 @@ Notes:
* `cppcheck`
* `cpplint`!!
* `cquery`
* `cspell`
* `flawfinder`
* `gcc` (`cc`)
* `uncrustify`
@ -105,6 +111,7 @@ Notes:
* `ameba`!!
* `crystal`!!
* CSS
* `cspell`
* `csslint`
* `fecs`
* `prettier`
@ -143,6 +150,7 @@ Notes:
* `hadolint`
* Elixir
* `credo`
* `cspell`
* `dialyxir`
* `dogma`!!
* `elixir-ls`
@ -180,6 +188,7 @@ Notes:
* `glslls`
* Go
* `bingo`
* `cspell`
* `go build`!!
* `go mod`!!
* `go vet`!!
@ -211,6 +220,7 @@ Notes:
* Haskell
* `brittany`
* `cabal-ghc`
* `cspell`
* `floskell`
* `ghc`
* `ghc-mod`
@ -229,6 +239,7 @@ Notes:
* HTML
* `alex`
* `angular`
* `cspell`
* `fecs`
* `html-beautify`
* `htmlhint`
@ -247,12 +258,14 @@ Notes:
* Java
* `PMD`
* `checkstyle`!!
* `cspell`
* `eclipselsp`
* `google-java-format`
* `javac`
* `javalsp`
* `uncrustify`
* JavaScript
* `cspell`
* `deno`
* `eslint`
* `fecs`
@ -266,6 +279,7 @@ Notes:
* `tsserver`
* `xo`
* JSON
* `cspell`
* `eslint`
* `fixjson`
* `jq`
@ -288,6 +302,7 @@ Notes:
* LaTeX (tex)
* `alex`
* `chktex`
* `cspell`
* `lacheck`
* `proselint`
* `redpen`
@ -302,6 +317,7 @@ Notes:
* LLVM
* `llc`
* Lua
* `cspell`
* `lua-format`
* `luac`
* `luacheck`
@ -316,6 +332,7 @@ Notes:
* `checkmake`
* Markdown
* `alex`
* `cspell`
* `languagetool`!!
* `markdownlint`!!
* `mdl`
@ -377,6 +394,7 @@ Notes:
* Perl6
* `perl6 -c`
* PHP
* `cspell`
* `intelephense`
* `langserver`
* `phan`
@ -401,6 +419,7 @@ Notes:
* Pony
* `ponyc`
* PowerShell
* `cspell`
* `powershell`
* `psscriptanalyzer`
* Prolog
@ -424,6 +443,7 @@ Notes:
* `autopep8`
* `bandit`
* `black`
* `cspell`
* `flake8`
* `flakehell`
* `isort`
@ -459,6 +479,7 @@ Notes:
* `refmt`
* reStructuredText
* `alex`
* `cspell`
* `proselint`
* `redpen`
* `rstcheck`
@ -471,6 +492,7 @@ Notes:
* `rpmlint`
* Ruby
* `brakeman`!!
* `cspell`
* `debride`
* `prettier`
* `rails_best_practices`!!
@ -483,6 +505,7 @@ Notes:
* `standardrb`
* Rust
* `cargo`!!
* `cspell`
* `rls`
* `rust-analyzer`
* `rustc` (see |ale-integration-rust|)
@ -493,6 +516,7 @@ Notes:
* `sass-lint`
* `stylelint`
* Scala
* `cspell`
* `fsc`
* `metals`
* `sbtserver`
@ -527,6 +551,7 @@ Notes:
* `svelteserver`
* Swift
* Apple `swift-format`
* `cspell`
* `sourcekit-lsp`
* `swiftformat`
* `swiftlint`
@ -542,10 +567,12 @@ Notes:
* `tflint`
* Texinfo
* `alex`
* `cspell`
* `proselint`
* `write-good`
* Text^
* `alex`
* `cspell`
* `languagetool`!!
* `proselint`
* `redpen`
@ -556,6 +583,7 @@ Notes:
* `thrift`
* `thriftcheck`
* TypeScript
* `cspell`
* `deno`
* `eslint`
* `fecs`
@ -589,10 +617,12 @@ Notes:
* `proselint`
* `write-good`
* Vue
* `cspell`
* `prettier`
* `vls`
* XHTML
* `alex`
* `cspell`
* `proselint`
* `write-good`
* XML

View File

@ -19,7 +19,8 @@ Additionally, ALE tries to locate and use the nearest existing `.swift-format`
configuration file.
g:ale_swift_appleswiftformat_executable *g:ale_swift_appleswiftformat_executable*
g:ale_swift_appleswiftformat_executable
*g:ale_swift_appleswiftformat_executable*
*b:ale_swift_appleswiftformat_executable*
Type: |String|
Default: `'swift-format'`
@ -28,7 +29,8 @@ g:ale_swift_appleswiftformat_executable *g:ale_swift_appleswiftformat_executable
`swift-format`.
g:ale_swift_appleswiftformat_use_swiftpm *g:ale_swift_appleswiftformat_use_swiftpm*
g:ale_swift_appleswiftformat_use_swiftpm
*g:ale_swift_appleswiftformat_use_swiftpm*
*b:ale_swift_appleswiftformat_use_swiftpm*
Type: |Number|
Default: `0`
@ -40,6 +42,12 @@ g:ale_swift_appleswiftformat_use_swiftpm *g:ale_swift_appleswiftformat_use_swift
See |ale-integrations-local-executables|
===============================================================================
cspell *ale-swift-cspell*
See |ale-cspell-options|
===============================================================================
sourcekitlsp *ale-swift-sourcekitlsp*
@ -57,4 +65,3 @@ g:ale_sourcekit_lsp_executable *g:ale_sourcekit_lsp_executable*
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -21,7 +21,13 @@ g:ale_tex_chktex_options *g:ale_tex_chktex_options*
This variable can be changed to modify flags given to chktex.
------------------------------------------------------------------------------
===============================================================================
cspell *ale-tex-cspell*
See |ale-cspell-options|
===============================================================================
lacheck *ale-tex-lacheck*
g:ale_lacheck_executable *g:ale_lacheck_executable*
@ -32,12 +38,11 @@ g:ale_lacheck_executable *g:ale_lacheck_executable*
This variable can be changed to change the path to lacheck.
===============================================================================
latexindent *ale-tex-latexindent*
latexindent *ale-tex-latexindent*
g:ale_tex_latexindent_executable *g:ale_tex_latexindent_executable*
*b:ale_tex_latexindent_executable*
g:ale_tex_latexindent_executable *g:ale_tex_latexindent_executable*
*b:ale_tex_latexindent_executable*
Type: |String|
Default: `'latexindent'`
@ -52,26 +57,24 @@ g:ale_tex_latexindent_options *g:ale_tex_latexindent_options*
This variable can be changed to modify flags given to latexindent.
===============================================================================
texlab *ale-tex-texlab*
texlab *ale-tex-texlab*
g:ale_tex_texlab_executable *g:ale_tex_texlab_executable*
*b:ale_tex_texlab_executable*
g:ale_tex_texlab_executable *g:ale_tex_texlab_executable*
*b:ale_tex_texlab_executable*
Type: |String|
Default: `'texlab'`
This variable can be changed to change the path to texlab.
g:ale_tex_texlab_options *g:ale_tex_texlab_options*
*b:ale_tex_texlab_options*
g:ale_tex_texlab_options *g:ale_tex_texlab_options*
*b:ale_tex_texlab_options*
Type: |String|
Default: `''`
This variable can be changed to modify flags given to texlab.
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -2,6 +2,12 @@
ALE Texinfo Integration *ale-texinfo-options*
===============================================================================
cspell *ale-texinfo-cspell*
See |ale-cspell-options|
===============================================================================
write-good *ale-texinfo-write-good*
@ -9,4 +15,4 @@ See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -2,6 +2,12 @@
ALE Text Integration *ale-text-options*
==============================================================================
cspell *ale-text-cspell*
See |ale-cspell-options|
===============================================================================
textlint *ale-text-textlint*
@ -39,4 +45,4 @@ See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -2,6 +2,12 @@
ALE TypeScript Integration *ale-typescript-options*
===============================================================================
cspell *ale-typescript-cspell*
See |ale-cspell-options|
===============================================================================
deno *ale-typescript-deno*
@ -27,6 +33,7 @@ g:ale_deno_lsp_project_root *g:ale_deno_lsp_project_root*
3. Use the directory of the current buffer (if the buffer was opened from
a file).
g:ale_deno_unstable *g:ale_deno_unstable*
*b:ale_deno_unstable*
Type: |Number|
@ -34,13 +41,15 @@ g:ale_deno_unstable *g:ale_deno_unstable*
Enable or disable unstable Deno features and APIs.
g:ale_deno_importMap *g:ale_deno_importMap*
*b:ale_deno_importMap*
g:ale_deno_importMap *g:ale_deno_importMap*
*b:ale_deno_importMap*
Type: |String|
Default: `'import_map.json'`
Specify the import map filename to load url maps in a deno project.
===============================================================================
eslint *ale-typescript-eslint*

View File

@ -2,6 +2,12 @@
ALE Vue Integration *ale-vue-options*
===============================================================================
cspell *ale-vue-cspell*
See |ale-cspell-options|
===============================================================================
prettier *ale-vue-prettier*

View File

@ -2,6 +2,12 @@
ALE XHTML Integration *ale-xhtml-options*
===============================================================================
cspell *ale-xhtml-cspell*
See |ale-cspell-options|
===============================================================================
write-good *ale-xhtml-write-good*
@ -9,4 +15,4 @@ See |ale-write-good-options|
===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:

View File

@ -25,9 +25,10 @@ CONTENTS *ale-contents*
6.1 Highlights........................|ale-highlights|
7. Linter/Fixer Options.................|ale-integration-options|
7.1 Options for alex..................|ale-alex-options|
7.2 Options for languagetool..........|ale-languagetool-options|
7.3 Options for write-good............|ale-write-good-options|
7.4 Other Linter/Fixer Options........|ale-other-integration-options|
7.2 Options for cspell................|ale-cspell-options|
7.3 Options for languagetool..........|ale-languagetool-options|
7.4 Options for write-good............|ale-write-good-options|
7.5 Other Linter/Fixer Options........|ale-other-integration-options|
8. Commands/Keybinds....................|ale-commands|
9. API..................................|ale-api|
10. Special Thanks......................|ale-special-thanks|
@ -2564,7 +2565,37 @@ g:ale_alex_use_global *g:ale_alex_use_global*
-------------------------------------------------------------------------------
7.2. Options for languagetool *ale-languagetool-options*
7.2. Options for cspell *ale-cspell-options*
The options for `cspell` are shared between all filetypes, so options can be
configured only once.
g:ale_cspell_executable *g:ale_cspell_executable*
*b:ale_cspell_executable*
Type: |String|
Default: `'cspell'`
See |ale-integrations-local-executables|
g:ale_cspell_options *g:ale_cspell_options*
*b:ale_cspell_options*
Type: |String|
Default: `''`
This variable can be set to pass additional options to `cspell`.
g:ale_cspell_use_global *g:ale_cspell_use_global*
*b:ale_cspell_use_global*
Type: |Number|
Default: `get(g: 'ale_use_global_executables', 0)`
See |ale-integrations-local-executables|
-------------------------------------------------------------------------------
7.3. Options for languagetool *ale-languagetool-options*
g:ale_languagetool_executable *g:ale_languagetool_executable*
*b:ale_languagetool_executable*
@ -2584,7 +2615,7 @@ g:ale_languagetool_options *g:ale_languagetool_options*
-------------------------------------------------------------------------------
7.3. Options for write-good *ale-write-good-options*
7.4. Options for write-good *ale-write-good-options*
The options for `write-good` are shared between all filetypes, so options can
be configured once.
@ -2614,12 +2645,13 @@ g:ale_writegood_use_global *g:ale_writegood_use_global*
-------------------------------------------------------------------------------
7.4. Other Linter/Fixer Options *ale-other-integration-options*
7.5. 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.
ada.....................................|ale-ada-options|
cspell................................|ale-ada-cspell|
gcc...................................|ale-ada-gcc|
gnatpp................................|ale-ada-gnatpp|
ada-language-server...................|ale-ada-language-server|
@ -2629,6 +2661,7 @@ documented in additional help files.
apkbuild-lint.........................|ale-apkbuild-apkbuild-lint|
secfixes-check........................|ale-apkbuild-secfixes-check|
asciidoc................................|ale-asciidoc-options|
cspell................................|ale-asciidoc-cspell|
write-good............................|ale-asciidoc-write-good|
textlint..............................|ale-asciidoc-textlint|
asm.....................................|ale-asm-options|
@ -2652,6 +2685,7 @@ documented in additional help files.
clangtidy.............................|ale-c-clangtidy|
cppcheck..............................|ale-c-cppcheck|
cquery................................|ale-c-cquery|
cspell................................|ale-c-cspell|
flawfinder............................|ale-c-flawfinder|
uncrustify............................|ale-c-uncrustify|
chef....................................|ale-chef-options|
@ -2677,15 +2711,18 @@ documented in additional help files.
cppcheck..............................|ale-cpp-cppcheck|
cpplint...............................|ale-cpp-cpplint|
cquery................................|ale-cpp-cquery|
cspell................................|ale-cpp-cspell|
flawfinder............................|ale-cpp-flawfinder|
uncrustify............................|ale-cpp-uncrustify|
c#......................................|ale-cs-options|
csc...................................|ale-cs-csc|
cspell................................|ale-cs-cspell|
dotnet-format.........................|ale-cs-dotnet-format|
mcs...................................|ale-cs-mcs|
mcsc..................................|ale-cs-mcsc|
uncrustify............................|ale-cs-uncrustify|
css.....................................|ale-css-options|
cspell................................|ale-css-cspell|
fecs..................................|ale-css-fecs|
prettier..............................|ale-css-prettier|
stylelint.............................|ale-css-stylelint|
@ -2720,6 +2757,7 @@ documented in additional help files.
dialyxir..............................|ale-elixir-dialyxir|
elixir-ls.............................|ale-elixir-elixir-ls|
credo.................................|ale-elixir-credo|
cspell................................|ale-elixir-cspell|
elm.....................................|ale-elm-options|
elm-format............................|ale-elm-elm-format|
elm-ls................................|ale-elm-elm-ls|
@ -2748,6 +2786,7 @@ documented in additional help files.
glslls................................|ale-glsl-glslls|
go......................................|ale-go-options|
bingo.................................|ale-go-bingo|
cspell................................|ale-go-cspell|
gobuild...............................|ale-go-gobuild|
gofmt.................................|ale-go-gofmt|
gofumpt...............................|ale-go-gofumpt|
@ -2773,6 +2812,7 @@ documented in additional help files.
ember-template-lint...................|ale-handlebars-embertemplatelint|
haskell.................................|ale-haskell-options|
brittany..............................|ale-haskell-brittany|
cspell................................|ale-haskell-cspell|
floskell..............................|ale-haskell-floskell|
ghc...................................|ale-haskell-ghc|
ghc-mod...............................|ale-haskell-ghc-mod|
@ -2789,8 +2829,11 @@ documented in additional help files.
ormolu................................|ale-haskell-ormolu|
hcl.....................................|ale-hcl-options|
terraform-fmt.........................|ale-hcl-terraform-fmt|
help....................................|ale-help-options|
cspell................................|ale-help-cspell|
html....................................|ale-html-options|
angular...............................|ale-html-angular|
cspell................................|ale-html-cspell|
fecs..................................|ale-html-fecs|
html-beautify.........................|ale-html-beautify|
htmlhint..............................|ale-html-htmlhint|
@ -2808,6 +2851,7 @@ documented in additional help files.
ispc..................................|ale-ispc-ispc|
java....................................|ale-java-options|
checkstyle............................|ale-java-checkstyle|
cspell................................|ale-java-cspell|
javac.................................|ale-java-javac|
google-java-format....................|ale-java-google-java-format|
pmd...................................|ale-java-pmd|
@ -2815,6 +2859,7 @@ documented in additional help files.
eclipselsp............................|ale-java-eclipselsp|
uncrustify............................|ale-java-uncrustify|
javascript..............................|ale-javascript-options|
cspell................................|ale-javascript-cspell|
deno..................................|ale-javascript-deno|
eslint................................|ale-javascript-eslint|
fecs..................................|ale-javascript-fecs|
@ -2828,6 +2873,7 @@ documented in additional help files.
standard..............................|ale-javascript-standard|
xo....................................|ale-javascript-xo|
json....................................|ale-json-options|
cspell................................|ale-json-cspell|
eslint................................|ale-json-eslint|
fixjson...............................|ale-json-fixjson|
jsonlint..............................|ale-json-jsonlint|
@ -2848,6 +2894,7 @@ documented in additional help files.
ktlint................................|ale-kotlin-ktlint|
languageserver........................|ale-kotlin-languageserver|
latex...................................|ale-latex-options|
cspell................................|ale-latex-cspell|
write-good............................|ale-latex-write-good|
textlint..............................|ale-latex-textlint|
less....................................|ale-less-options|
@ -2857,12 +2904,14 @@ documented in additional help files.
llvm....................................|ale-llvm-options|
llc...................................|ale-llvm-llc|
lua.....................................|ale-lua-options|
cspell................................|ale-lua-cspell|
lua-format............................|ale-lua-lua-format|
luac..................................|ale-lua-luac|
luacheck..............................|ale-lua-luacheck|
luafmt................................|ale-lua-luafmt|
stylua................................|ale-lua-stylua|
markdown................................|ale-markdown-options|
cspell................................|ale-markdown-cspell|
markdownlint..........................|ale-markdown-markdownlint|
mdl...................................|ale-markdown-mdl|
pandoc................................|ale-markdown-pandoc|
@ -2914,6 +2963,7 @@ documented in additional help files.
perl6...................................|ale-perl6-options|
perl6.................................|ale-perl6-perl6|
php.....................................|ale-php-options|
cspell................................|ale-php-cspell|
langserver............................|ale-php-langserver|
phan..................................|ale-php-phan|
phpcbf................................|ale-php-phpcbf|
@ -2931,9 +2981,10 @@ documented in additional help files.
write-good............................|ale-pod-write-good|
pony....................................|ale-pony-options|
ponyc.................................|ale-pony-ponyc|
powershell............................|ale-powershell-options|
powershell..........................|ale-powershell-powershell|
psscriptanalyzer....................|ale-powershell-psscriptanalyzer|
powershell..............................|ale-powershell-options|
cspell................................|ale-powershell-cspell|
powershell............................|ale-powershell-powershell|
psscriptanalyzer......................|ale-powershell-psscriptanalyzer|
prolog..................................|ale-prolog-options|
swipl.................................|ale-prolog-swipl|
proto...................................|ale-proto-options|
@ -2957,6 +3008,7 @@ documented in additional help files.
autopep8..............................|ale-python-autopep8|
bandit................................|ale-python-bandit|
black.................................|ale-python-black|
cspell................................|ale-python-cspell|
flake8................................|ale-python-flake8|
flakehell.............................|ale-python-flakehell|
isort.................................|ale-python-isort|
@ -2985,12 +3037,14 @@ documented in additional help files.
reason-language-server................|ale-reasonml-language-server|
refmt.................................|ale-reasonml-refmt|
restructuredtext........................|ale-restructuredtext-options|
cspell................................|ale-restructuredtext-cspell|
textlint..............................|ale-restructuredtext-textlint|
write-good............................|ale-restructuredtext-write-good|
robot...................................|ale-robot-options|
rflint................................|ale-robot-rflint|
ruby....................................|ale-ruby-options|
brakeman..............................|ale-ruby-brakeman|
cspell................................|ale-ruby-cspell|
debride...............................|ale-ruby-debride|
prettier..............................|ale-ruby-prettier|
rails_best_practices..................|ale-ruby-rails_best_practices|
@ -3004,6 +3058,7 @@ documented in additional help files.
rust....................................|ale-rust-options|
analyzer..............................|ale-rust-analyzer|
cargo.................................|ale-rust-cargo|
cspell................................|ale-rust-cspell|
rls...................................|ale-rust-rls|
rustc.................................|ale-rust-rustc|
rustfmt...............................|ale-rust-rustfmt|
@ -3013,6 +3068,7 @@ documented in additional help files.
sasslint..............................|ale-sass-sasslint|
stylelint.............................|ale-sass-stylelint|
scala...................................|ale-scala-options|
cspell................................|ale-scala-cspell|
metals................................|ale-scala-metals|
sbtserver.............................|ale-scala-sbtserver|
scalafmt..............................|ale-scala-scalafmt|
@ -3023,6 +3079,7 @@ documented in additional help files.
stylelint.............................|ale-scss-stylelint|
sh......................................|ale-sh-options|
bashate...............................|ale-sh-bashate|
cspell................................|ale-sh-cspell|
sh-language-server....................|ale-sh-language-server|
shell.................................|ale-sh-shell|
shellcheck............................|ale-sh-shellcheck|
@ -3048,6 +3105,7 @@ documented in additional help files.
svelteserver..........................|ale-svelte-svelteserver|
swift...................................|ale-swift-options|
apple-swift-format....................|ale-swift-apple-swift-format|
cspell................................|ale-swift-cspell|
sourcekitlsp..........................|ale-swift-sourcekitlsp|
systemd.................................|ale-systemd-options|
systemd-analyze.......................|ale-systemd-analyze|
@ -3061,18 +3119,22 @@ documented in additional help files.
tflint................................|ale-terraform-tflint|
tex.....................................|ale-tex-options|
chktex................................|ale-tex-chktex|
cspell................................|ale-tex-cspell|
lacheck...............................|ale-tex-lacheck|
latexindent...........................|ale-tex-latexindent|
texlab................................|ale-tex-texlab|
texinfo.................................|ale-texinfo-options|
cspell................................|ale-texinfo-cspell|
write-good............................|ale-texinfo-write-good|
text....................................|ale-text-options|
cspell................................|ale-text-cspell|
textlint..............................|ale-text-textlint|
write-good............................|ale-text-write-good|
thrift..................................|ale-thrift-options|
thrift................................|ale-thrift-thrift|
thriftcheck...........................|ale-thrift-thriftcheck|
typescript..............................|ale-typescript-options|
cspell................................|ale-typescript-cspell|
deno..................................|ale-typescript-deno|
eslint................................|ale-typescript-eslint|
prettier..............................|ale-typescript-prettier|
@ -3103,9 +3165,11 @@ documented in additional help files.
vimls.................................|ale-vim-vimls|
vint..................................|ale-vim-vint|
vue.....................................|ale-vue-options|
cspell................................|ale-vue-cspell|
prettier..............................|ale-vue-prettier|
vls...................................|ale-vue-vls|
xhtml...................................|ale-xhtml-options|
cspell................................|ale-xhtml-cspell|
write-good............................|ale-xhtml-write-good|
xml.....................................|ale-xml-options|
xmllint...............................|ale-xml-xmllint|

View File

@ -23,6 +23,7 @@ formatting.
* Ada
* [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)
* [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
@ -34,6 +35,7 @@ formatting.
* [secfixes-check](https://gitlab.alpinelinux.org/Leo/atools)
* AsciiDoc
* [alex](https://github.com/get-alex/alex)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [languagetool](https://languagetool.org/) :floppy_disk:
* [proselint](http://proselint.com/)
* [redpen](http://redpen.cc/)
@ -48,6 +50,7 @@ formatting.
* [gawk](https://www.gnu.org/software/gawk/)
* Bash
* [bashate](https://github.com/openstack/bashate)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [language-server](https://github.com/mads-hartmann/bash-language-server)
* shell [-n flag](https://www.gnu.org/software/bash/manual/bash.html#index-set)
* [shellcheck](https://www.shellcheck.net/)
@ -72,11 +75,13 @@ formatting.
* [cppcheck](http://cppcheck.sourceforge.net)
* [cpplint](https://github.com/google/styleguide/tree/gh-pages/cpplint)
* [cquery](https://github.com/cquery-project/cquery)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [flawfinder](https://www.dwheeler.com/flawfinder/)
* [gcc](https://gcc.gnu.org/)
* [uncrustify](https://github.com/uncrustify/uncrustify)
* C#
* [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)
* [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
@ -93,6 +98,7 @@ formatting.
* [cppcheck](http://cppcheck.sourceforge.net)
* [cpplint](https://github.com/google/styleguide/tree/gh-pages/cpplint) :floppy_disk:
* [cquery](https://github.com/cquery-project/cquery)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [flawfinder](https://www.dwheeler.com/flawfinder/)
* [gcc](https://gcc.gnu.org/)
* [uncrustify](https://github.com/uncrustify/uncrustify)
@ -114,6 +120,7 @@ formatting.
* [ameba](https://github.com/veelenga/ameba) :floppy_disk:
* [crystal](https://crystal-lang.org/) :floppy_disk:
* CSS
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [csslint](http://csslint.net/)
* [fecs](http://fecs.baidu.com/)
* [prettier](https://github.com/prettier/prettier)
@ -152,6 +159,7 @@ formatting.
* [hadolint](https://github.com/hadolint/hadolint)
* Elixir
* [credo](https://github.com/rrrene/credo)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [dialyxir](https://github.com/jeremyjh/dialyxir)
* [dogma](https://github.com/lpil/dogma) :floppy_disk:
* [elixir-ls](https://github.com/elixir-lsp/elixir-ls) :warning:
@ -189,6 +197,7 @@ formatting.
* [glslls](https://github.com/svenstaro/glsl-language-server)
* Go
* [bingo](https://github.com/saibing/bingo) :warning:
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [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:
@ -220,6 +229,7 @@ formatting.
* Haskell
* [brittany](https://github.com/lspitzner/brittany)
* [cabal-ghc](https://www.haskell.org/cabal/)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [floskell](https://github.com/ennocramer/floskell)
* [ghc](https://www.haskell.org/ghc/)
* [ghc-mod](https://github.com/DanielG/ghc-mod)
@ -238,6 +248,7 @@ formatting.
* HTML
* [alex](https://github.com/get-alex/alex)
* [angular](https://www.npmjs.com/package/@angular/language-server)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [fecs](http://fecs.baidu.com/)
* [html-beautify](https://beautifier.io/)
* [htmlhint](http://htmlhint.com/)
@ -256,12 +267,14 @@ formatting.
* Java
* [PMD](https://pmd.github.io/)
* [checkstyle](http://checkstyle.sourceforge.net) :floppy_disk:
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [eclipselsp](https://github.com/eclipse/eclipse.jdt.ls)
* [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)
* [uncrustify](https://github.com/uncrustify/uncrustify)
* JavaScript
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [deno](https://deno.land/)
* [eslint](http://eslint.org/)
* [fecs](http://fecs.baidu.com/)
@ -275,6 +288,7 @@ formatting.
* [tsserver](https://github.com/Microsoft/TypeScript/wiki/Standalone-Server-%28tsserver%29)
* [xo](https://github.com/sindresorhus/xo)
* JSON
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [eslint](http://eslint.org/)
* [fixjson](https://github.com/rhysd/fixjson)
* [jq](https://stedolan.github.io/jq/)
@ -297,6 +311,7 @@ formatting.
* LaTeX
* [alex](https://github.com/get-alex/alex)
* [chktex](http://www.nongnu.org/chktex/)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [lacheck](https://www.ctan.org/pkg/lacheck)
* [proselint](http://proselint.com/)
* [redpen](http://redpen.cc/)
@ -311,6 +326,7 @@ formatting.
* LLVM
* [llc](https://llvm.org/docs/CommandGuide/llc.html)
* Lua
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [lua-format](https://github.com/Koihik/LuaFormatter)
* [luac](https://www.lua.org/manual/5.1/luac.html)
* [luacheck](https://github.com/mpeterv/luacheck)
@ -325,6 +341,7 @@ formatting.
* [checkmake](https://github.com/mrtazz/checkmake)
* Markdown
* [alex](https://github.com/get-alex/alex)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [languagetool](https://languagetool.org/) :floppy_disk:
* [markdownlint](https://github.com/DavidAnson/markdownlint) :floppy_disk:
* [mdl](https://github.com/mivok/markdownlint)
@ -386,6 +403,7 @@ formatting.
* Perl6
* [perl6 -c](https://perl6.org) :warning:
* PHP
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [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
@ -410,6 +428,7 @@ formatting.
* Pony
* [ponyc](https://github.com/ponylang/ponyc)
* PowerShell
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [powershell](https://github.com/PowerShell/PowerShell)
* [psscriptanalyzer](https://github.com/PowerShell/PSScriptAnalyzer)
* Prolog
@ -433,6 +452,7 @@ formatting.
* [autopep8](https://github.com/hhatto/autopep8)
* [bandit](https://github.com/PyCQA/bandit) :warning:
* [black](https://github.com/ambv/black)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [flake8](http://flake8.pycqa.org/en/latest/)
* [flakehell](https://github.com/flakehell/flakehell)
* [isort](https://github.com/timothycrosley/isort)
@ -468,6 +488,7 @@ formatting.
* [refmt](https://github.com/reasonml/reason-cli)
* reStructuredText
* [alex](https://github.com/get-alex/alex)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [proselint](http://proselint.com/)
* [redpen](http://redpen.cc/)
* [rstcheck](https://github.com/myint/rstcheck)
@ -480,6 +501,7 @@ formatting.
* [rpmlint](https://github.com/rpm-software-management/rpmlint) :warning: (see `:help ale-integration-spec`)
* Ruby
* [brakeman](http://brakemanscanner.org/) :floppy_disk:
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [debride](https://github.com/seattlerb/debride)
* [prettier](https://github.com/prettier/plugin-ruby)
* [rails_best_practices](https://github.com/flyerhzm/rails_best_practices) :floppy_disk:
@ -492,6 +514,7 @@ formatting.
* [standardrb](https://github.com/testdouble/standard)
* 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)
* [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:
@ -502,6 +525,7 @@ formatting.
* [sass-lint](https://www.npmjs.com/package/sass-lint)
* [stylelint](https://github.com/stylelint/stylelint)
* 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)
* [metals](https://scalameta.org/metals/)
* [sbtserver](https://www.scala-sbt.org/1.x/docs/sbt-server.html)
@ -536,6 +560,7 @@ formatting.
* [svelteserver](https://github.com/sveltejs/language-tools/tree/master/packages/language-server)
* Swift
* [Apple swift-format](https://github.com/apple/swift-format)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [sourcekit-lsp](https://github.com/apple/sourcekit-lsp)
* [swiftformat](https://github.com/nicklockwood/SwiftFormat)
* [swiftlint](https://github.com/realm/SwiftLint)
@ -551,10 +576,12 @@ formatting.
* [tflint](https://github.com/wata727/tflint)
* Texinfo
* [alex](https://github.com/get-alex/alex)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [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)
* [languagetool](https://languagetool.org/) :floppy_disk:
* [proselint](http://proselint.com/) :warning:
* [redpen](http://redpen.cc/) :warning:
@ -565,6 +592,7 @@ formatting.
* [thrift](http://thrift.apache.org/)
* [thriftcheck](https://github.com/pinterest/thriftcheck)
* TypeScript
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [deno](https://deno.land/)
* [eslint](http://eslint.org/)
* [fecs](http://fecs.baidu.com/)
@ -598,10 +626,12 @@ formatting.
* [proselint](http://proselint.com/) :warning:
* [write-good](https://github.com/btford/write-good) :warning:
* Vue
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [prettier](https://github.com/prettier/prettier)
* [vls](https://github.com/vuejs/vetur/tree/master/server)
* XHTML
* [alex](https://github.com/get-alex/alex)
* [cspell](https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell)
* [proselint](http://proselint.com/)
* [write-good](https://github.com/btford/write-good)
* XML

View File

@ -0,0 +1,13 @@
Execute(The cspell handler should handle cspell output):
AssertEqual
\ [
\ {
\ 'lnum': 721,
\ 'col': 18,
\ 'type': 'W',
\ 'text': 'Unknown word (stylelint)',
\ },
\ ],
\ ale#handlers#cspell#Handle(bufnr(''),
\ '/:721:18 - Unknown word (stylelint)'
\)

View File

@ -0,0 +1,69 @@
Before:
call ale#assert#SetUpLinterTest('tex', 'cspell')
" We have to manually do our own variable reset because SetUpLinterTest calls
" ale#assert#ResetVariables, which specifically only resets variables that
" begin with ale_<filetype>_, 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_cspell_executable
Save g:ale_cspell_use_global
Save g:ale_cspell_options
unlet! g:ale_cspell_executable
unlet! g:ale_cspell_use_global
unlet! g:ale_cspell_options
let g:ale_cspell_executable = 'cspell'
let g:ale_cspell_use_global = 0
let g:ale_cspell_options = ''
After:
call ale#assert#TearDownLinterTest()
Execute(The global executable should be used when the local one cannot be found):
AssertLinter
\ 'cspell',
\ ale#Escape('cspell')
\ . ' lint --no-color --no-progress --no-summary -- stdin'
Execute(Should use the node_modules/.bin executable if available):
call ale#test#SetFilename('../test-files/cspell/node-modules/test.tex')
AssertLinter
\ ale#path#Simplify(g:dir
\ . '/../test-files/cspell/node-modules/node_modules/.bin/cspell'),
\ ale#Escape(ale#path#Simplify(g:dir
\ . '/../test-files/cspell/node-modules/node_modules/.bin/cspell'))
\ . ' lint --no-color --no-progress --no-summary -- stdin'
Execute(Should use the node_modules/cspell executable if available):
call ale#test#SetFilename('../test-files/cspell/node-modules-2/test.tex')
AssertLinter
\ ale#path#Simplify(g:dir
\ . '/../test-files/cspell/node-modules-2/node_modules/cspell/bin.js'),
\ (has('win32') ? 'node.exe ': '')
\ . ale#Escape(ale#path#Simplify(g:dir
\ . '/../test-files/cspell/node-modules-2/node_modules/cspell/bin.js'))
\ . ' lint --no-color --no-progress --no-summary -- stdin'
Execute(Should let users configure a global executable and override local paths):
let g:ale_cspell_executable = '/path/to/custom/cspell'
let g:ale_cspell_use_global = 1
AssertLinter
\ '/path/to/custom/cspell',
\ ale#Escape('/path/to/custom/cspell')
\ . ' lint --no-color --no-progress --no-summary -- stdin'
Execute(Additional cspell options should be configurable):
let g:ale_cspell_options = '--foobar'
AssertLinter
\ 'cspell',
\ ale#Escape('cspell')
\ . ' lint --no-color --no-progress --no-summary --foobar -- stdin'

View File

View File