summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Houston <houstdav000@gmail.com>2021-11-18 17:41:05 -0500
committerGitHub <noreply@github.com>2021-11-19 07:41:05 +0900
commitea643b97ab08e571a543f4bd89cd3170f3f288e2 (patch)
treef701724bf0911b445107fc5caa23d6d1503de260
parentaee0cc45bea7f190c27f0fc06f98a465ecff56fa (diff)
downloadale-ea643b97ab08e571a543f4bd89cd3170f3f288e2.zip
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>
-rw-r--r--ale_linters/ada/cspell.vim5
-rw-r--r--ale_linters/asciidoc/cspell.vim5
-rw-r--r--ale_linters/c/cspell.vim5
-rw-r--r--ale_linters/cpp/cspell.vim5
-rw-r--r--ale_linters/cs/cspell.vim5
-rw-r--r--ale_linters/css/cspell.vim5
-rw-r--r--ale_linters/elixir/cspell.vim5
-rw-r--r--ale_linters/go/cspell.vim5
-rw-r--r--ale_linters/haskell/cspell.vim5
-rw-r--r--ale_linters/help/cspell.vim5
-rw-r--r--ale_linters/html/cspell.vim5
-rw-r--r--ale_linters/java/cspell.vim5
-rw-r--r--ale_linters/javascript/cspell.vim5
-rw-r--r--ale_linters/json/cspell.vim5
-rw-r--r--ale_linters/lua/cspell.vim5
-rw-r--r--ale_linters/markdown/cspell.vim5
-rw-r--r--ale_linters/php/cspell.vim5
-rw-r--r--ale_linters/powershell/cspell.vim5
-rw-r--r--ale_linters/python/cspell.vim5
-rw-r--r--ale_linters/rst/cspell.vim5
-rw-r--r--ale_linters/ruby/cspell.vim5
-rw-r--r--ale_linters/rust/cspell.vim5
-rw-r--r--ale_linters/scala/cspell.vim5
-rw-r--r--ale_linters/sh/cspell.vim5
-rw-r--r--ale_linters/swift/cspell.vim5
-rw-r--r--ale_linters/tex/cspell.vim5
-rw-r--r--ale_linters/texinfo/cspell.vim5
-rw-r--r--ale_linters/text/cspell.vim5
-rw-r--r--ale_linters/typescript/cspell.vim5
-rw-r--r--ale_linters/vue/cspell.vim5
-rw-r--r--ale_linters/xhtml/cspell.vim5
-rw-r--r--autoload/ale/handlers/cspell.vim54
-rw-r--r--doc/ale-ada.txt5
-rw-r--r--doc/ale-asciidoc.txt6
-rw-r--r--doc/ale-c.txt6
-rw-r--r--doc/ale-cpp.txt6
-rw-r--r--doc/ale-cs.txt6
-rw-r--r--doc/ale-css.txt6
-rw-r--r--doc/ale-elixir.txt24
-rw-r--r--doc/ale-go.txt8
-rw-r--r--doc/ale-haskell.txt6
-rw-r--r--doc/ale-help.txt12
-rw-r--r--doc/ale-html.txt5
-rw-r--r--doc/ale-java.txt16
-rw-r--r--doc/ale-javascript.txt7
-rw-r--r--doc/ale-json.txt6
-rw-r--r--doc/ale-latex.txt7
-rw-r--r--doc/ale-lua.txt11
-rw-r--r--doc/ale-markdown.txt8
-rw-r--r--doc/ale-php.txt11
-rw-r--r--doc/ale-powershell.txt15
-rw-r--r--doc/ale-python.txt19
-rw-r--r--doc/ale-restructuredtext.txt9
-rw-r--r--doc/ale-ruby.txt9
-rw-r--r--doc/ale-rust.txt15
-rw-r--r--doc/ale-scala.txt6
-rw-r--r--doc/ale-sh.txt6
-rw-r--r--doc/ale-supported-languages-and-tools.txt30
-rw-r--r--doc/ale-swift.txt13
-rw-r--r--doc/ale-tex.txt27
-rw-r--r--doc/ale-texinfo.txt8
-rw-r--r--doc/ale-text.txt8
-rw-r--r--doc/ale-typescript.txt13
-rw-r--r--doc/ale-vue.txt6
-rw-r--r--doc/ale-xhtml.txt8
-rw-r--r--doc/ale.txt82
-rw-r--r--supported-tools.md30
-rw-r--r--test/handler/test_cspell_handler.vader13
-rw-r--r--test/linter/test_cspell.vader69
-rwxr-xr-xtest/test-files/cspell/node-modules-2/node_modules/cspell/bin.js0
-rwxr-xr-xtest/test-files/cspell/node-modules/node_modules/.bin/cspell0
71 files changed, 689 insertions, 62 deletions
diff --git a/ale_linters/ada/cspell.vim b/ale_linters/ada/cspell.vim
new file mode 100644
index 00000000..7342d2b6
--- /dev/null
+++ b/ale_linters/ada/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Ada files.
+
+call ale#handlers#cspell#DefineLinter('ada')
diff --git a/ale_linters/asciidoc/cspell.vim b/ale_linters/asciidoc/cspell.vim
new file mode 100644
index 00000000..b228b2e8
--- /dev/null
+++ b/ale_linters/asciidoc/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for ASCIIDoc files.
+
+call ale#handlers#cspell#DefineLinter('asciidoc')
diff --git a/ale_linters/c/cspell.vim b/ale_linters/c/cspell.vim
new file mode 100644
index 00000000..5f016548
--- /dev/null
+++ b/ale_linters/c/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for C files.
+
+call ale#handlers#cspell#DefineLinter('c')
diff --git a/ale_linters/cpp/cspell.vim b/ale_linters/cpp/cspell.vim
new file mode 100644
index 00000000..ace4c3b2
--- /dev/null
+++ b/ale_linters/cpp/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for C++ files.
+
+call ale#handlers#cspell#DefineLinter('cpp')
diff --git a/ale_linters/cs/cspell.vim b/ale_linters/cs/cspell.vim
new file mode 100644
index 00000000..c62dd11b
--- /dev/null
+++ b/ale_linters/cs/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for C# files.
+
+call ale#handlers#cspell#DefineLinter('cs')
diff --git a/ale_linters/css/cspell.vim b/ale_linters/css/cspell.vim
new file mode 100644
index 00000000..d42375b4
--- /dev/null
+++ b/ale_linters/css/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for CSS files.
+
+call ale#handlers#cspell#DefineLinter('css')
diff --git a/ale_linters/elixir/cspell.vim b/ale_linters/elixir/cspell.vim
new file mode 100644
index 00000000..12dc271f
--- /dev/null
+++ b/ale_linters/elixir/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Elixir files.
+
+call ale#handlers#cspell#DefineLinter('elixir')
diff --git a/ale_linters/go/cspell.vim b/ale_linters/go/cspell.vim
new file mode 100644
index 00000000..f986a31a
--- /dev/null
+++ b/ale_linters/go/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Go files.
+
+call ale#handlers#cspell#DefineLinter('go')
diff --git a/ale_linters/haskell/cspell.vim b/ale_linters/haskell/cspell.vim
new file mode 100644
index 00000000..b0971a9e
--- /dev/null
+++ b/ale_linters/haskell/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Haskell files.
+
+call ale#handlers#cspell#DefineLinter('haskell')
diff --git a/ale_linters/help/cspell.vim b/ale_linters/help/cspell.vim
new file mode 100644
index 00000000..92eb9501
--- /dev/null
+++ b/ale_linters/help/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for help files.
+
+call ale#handlers#cspell#DefineLinter('help')
diff --git a/ale_linters/html/cspell.vim b/ale_linters/html/cspell.vim
new file mode 100644
index 00000000..743350ea
--- /dev/null
+++ b/ale_linters/html/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for HTML files.
+
+call ale#handlers#cspell#DefineLinter('html')
diff --git a/ale_linters/java/cspell.vim b/ale_linters/java/cspell.vim
new file mode 100644
index 00000000..a6eecc0b
--- /dev/null
+++ b/ale_linters/java/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Java files.
+
+call ale#handlers#cspell#DefineLinter('java')
diff --git a/ale_linters/javascript/cspell.vim b/ale_linters/javascript/cspell.vim
new file mode 100644
index 00000000..5a496779
--- /dev/null
+++ b/ale_linters/javascript/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for JavaScript files.
+
+call ale#handlers#cspell#DefineLinter('javascript')
diff --git a/ale_linters/json/cspell.vim b/ale_linters/json/cspell.vim
new file mode 100644
index 00000000..0d7314a4
--- /dev/null
+++ b/ale_linters/json/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for JSON files.
+
+call ale#handlers#cspell#DefineLinter('json')
diff --git a/ale_linters/lua/cspell.vim b/ale_linters/lua/cspell.vim
new file mode 100644
index 00000000..215b82f8
--- /dev/null
+++ b/ale_linters/lua/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Lua files.
+
+call ale#handlers#cspell#DefineLinter('lua')
diff --git a/ale_linters/markdown/cspell.vim b/ale_linters/markdown/cspell.vim
new file mode 100644
index 00000000..45c586cc
--- /dev/null
+++ b/ale_linters/markdown/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Markdown files.
+
+call ale#handlers#cspell#DefineLinter('markdown')
diff --git a/ale_linters/php/cspell.vim b/ale_linters/php/cspell.vim
new file mode 100644
index 00000000..574df575
--- /dev/null
+++ b/ale_linters/php/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for PHP files.
+
+call ale#handlers#cspell#DefineLinter('php')
diff --git a/ale_linters/powershell/cspell.vim b/ale_linters/powershell/cspell.vim
new file mode 100644
index 00000000..4a66dbaa
--- /dev/null
+++ b/ale_linters/powershell/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for PowerShell files.
+
+call ale#handlers#cspell#DefineLinter('powershell')
diff --git a/ale_linters/python/cspell.vim b/ale_linters/python/cspell.vim
new file mode 100644
index 00000000..a2325311
--- /dev/null
+++ b/ale_linters/python/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Python files.
+
+call ale#handlers#cspell#DefineLinter('python')
diff --git a/ale_linters/rst/cspell.vim b/ale_linters/rst/cspell.vim
new file mode 100644
index 00000000..14cfb42e
--- /dev/null
+++ b/ale_linters/rst/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for ReStructuredText files.
+
+call ale#handlers#cspell#DefineLinter('rst')
diff --git a/ale_linters/ruby/cspell.vim b/ale_linters/ruby/cspell.vim
new file mode 100644
index 00000000..780356b1
--- /dev/null
+++ b/ale_linters/ruby/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Ruby files.
+
+call ale#handlers#cspell#DefineLinter('ruby')
diff --git a/ale_linters/rust/cspell.vim b/ale_linters/rust/cspell.vim
new file mode 100644
index 00000000..d2523c7d
--- /dev/null
+++ b/ale_linters/rust/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Rust files.
+
+call ale#handlers#cspell#DefineLinter('rust')
diff --git a/ale_linters/scala/cspell.vim b/ale_linters/scala/cspell.vim
new file mode 100644
index 00000000..fa09d420
--- /dev/null
+++ b/ale_linters/scala/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Scala files.
+
+call ale#handlers#cspell#DefineLinter('scala')
diff --git a/ale_linters/sh/cspell.vim b/ale_linters/sh/cspell.vim
new file mode 100644
index 00000000..e3c5a6f0
--- /dev/null
+++ b/ale_linters/sh/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for shell scripts.
+
+call ale#handlers#cspell#DefineLinter('sh')
diff --git a/ale_linters/swift/cspell.vim b/ale_linters/swift/cspell.vim
new file mode 100644
index 00000000..25451e9d
--- /dev/null
+++ b/ale_linters/swift/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Swift files.
+
+call ale#handlers#cspell#DefineLinter('swift')
diff --git a/ale_linters/tex/cspell.vim b/ale_linters/tex/cspell.vim
new file mode 100644
index 00000000..4cf2b08e
--- /dev/null
+++ b/ale_linters/tex/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for TeX files.
+
+call ale#handlers#cspell#DefineLinter('tex')
diff --git a/ale_linters/texinfo/cspell.vim b/ale_linters/texinfo/cspell.vim
new file mode 100644
index 00000000..d691b3a7
--- /dev/null
+++ b/ale_linters/texinfo/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for TeXInfo files.
+
+call ale#handlers#cspell#DefineLinter('texinfo')
diff --git a/ale_linters/text/cspell.vim b/ale_linters/text/cspell.vim
new file mode 100644
index 00000000..813ef3b8
--- /dev/null
+++ b/ale_linters/text/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for general text files.
+
+call ale#handlers#cspell#DefineLinter('text')
diff --git a/ale_linters/typescript/cspell.vim b/ale_linters/typescript/cspell.vim
new file mode 100644
index 00000000..6061b75c
--- /dev/null
+++ b/ale_linters/typescript/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for TypeScript files.
+
+call ale#handlers#cspell#DefineLinter('typescript')
diff --git a/ale_linters/vue/cspell.vim b/ale_linters/vue/cspell.vim
new file mode 100644
index 00000000..2d8bfdc3
--- /dev/null
+++ b/ale_linters/vue/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for Vue files.
+
+call ale#handlers#cspell#DefineLinter('vue')
diff --git a/ale_linters/xhtml/cspell.vim b/ale_linters/xhtml/cspell.vim
new file mode 100644
index 00000000..c465b41b
--- /dev/null
+++ b/ale_linters/xhtml/cspell.vim
@@ -0,0 +1,5 @@
+scriptencoding utf-8
+" Author: David Houston <houstdav000>
+" Description: cspell support for XHTML files.
+
+call ale#handlers#cspell#DefineLinter('xhtml')
diff --git a/autoload/ale/handlers/cspell.vim b/autoload/ale/handlers/cspell.vim
new file mode 100644
index 00000000..2cd02d5c
--- /dev/null
+++ b/autoload/ale/handlers/cspell.vim
@@ -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
diff --git a/doc/ale-ada.txt b/doc/ale-ada.txt
index 0fc55a9c..80321dbb 100644
--- a/doc/ale-ada.txt
+++ b/doc/ale-ada.txt
@@ -3,6 +3,11 @@ ALE Ada Integration *ale-ada-options*
===============================================================================
+cspell *ale-ada-cspell*
+
+See |ale-cspell-options|
+
+===============================================================================
gcc *ale-ada-gcc*
g:ale_ada_gcc_executable *g:ale_ada_gcc_executable*
diff --git a/doc/ale-asciidoc.txt b/doc/ale-asciidoc.txt
index 86629fd4..dd8b12ff 100644
--- a/doc/ale-asciidoc.txt
+++ b/doc/ale-asciidoc.txt
@@ -3,6 +3,12 @@ ALE AsciiDoc Integration *ale-asciidoc-options*
===============================================================================
+cspell *ale-asciidoc-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
write-good *ale-asciidoc-write-good*
See |ale-write-good-options|
diff --git a/doc/ale-c.txt b/doc/ale-c.txt
index 3b9fbc44..bd8c4937 100644
--- a/doc/ale-c.txt
+++ b/doc/ale-c.txt
@@ -353,6 +353,12 @@ cache.
===============================================================================
+cspell *ale-c-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
flawfinder *ale-c-flawfinder*
g:ale_c_flawfinder_executable *g:ale_c_flawfinder_executable*
diff --git a/doc/ale-cpp.txt b/doc/ale-cpp.txt
index 17894e6e..d7a840dd 100644
--- a/doc/ale-cpp.txt
+++ b/doc/ale-cpp.txt
@@ -309,6 +309,12 @@ g:ale_cpp_cquery_cache_directory *g:ale_cpp_cquery_cache_directory*
===============================================================================
+cspell *ale-cpp-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
flawfinder *ale-cpp-flawfinder*
g:ale_cpp_flawfinder_executable *g:ale_cpp_flawfinder_executable*
diff --git a/doc/ale-cs.txt b/doc/ale-cs.txt
index bef495b9..26e2b023 100644
--- a/doc/ale-cs.txt
+++ b/doc/ale-cs.txt
@@ -91,6 +91,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*
Installation
diff --git a/doc/ale-css.txt b/doc/ale-css.txt
index ff74b263..dda4e6bd 100644
--- a/doc/ale-css.txt
+++ b/doc/ale-css.txt
@@ -3,6 +3,12 @@ ALE CSS Integration *ale-css-options*
===============================================================================
+cspell *ale-css-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
fecs *ale-css-fecs*
`fecs` options for CSS is the same as the options for JavaScript, and both of
diff --git a/doc/ale-elixir.txt b/doc/ale-elixir.txt
index a4e5c2c6..693db5aa 100644
--- a/doc/ale-elixir.txt
+++ b/doc/ale-elixir.txt
@@ -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:
diff --git a/doc/ale-go.txt b/doc/ale-go.txt
index 3ed48576..3ecd47fd 100644
--- a/doc/ale-go.txt
+++ b/doc/ale-go.txt
@@ -39,7 +39,6 @@ g:ale_go_go111module *g:ale_go_go111module*
golang tools.
-
===============================================================================
bingo *ale-go-bingo*
@@ -58,6 +57,11 @@ g:ale_go_bingo_options *g:ale_go_bingo_options*
===============================================================================
+cspell *ale-go-cspell*
+
+See |ale-cspell-options|
+
+===============================================================================
gobuild *ale-go-gobuild*
g:ale_go_gobuild_options *g:ale_go_gobuild_options*
@@ -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*
diff --git a/doc/ale-haskell.txt b/doc/ale-haskell.txt
index 09894340..1f41880d 100644
--- a/doc/ale-haskell.txt
+++ b/doc/ale-haskell.txt
@@ -14,6 +14,12 @@ g:ale_haskell_brittany_executable *g:ale_haskell_brittany_executable*
===============================================================================
+cspell *ale-haskell-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
floskell *ale-haskell-floskell*
g:ale_haskell_floskell_executable *g:ale_haskell_floskell_executable*
diff --git a/doc/ale-help.txt b/doc/ale-help.txt
new file mode 100644
index 00000000..89872545
--- /dev/null
+++ b/doc/ale-help.txt
@@ -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:
diff --git a/doc/ale-html.txt b/doc/ale-html.txt
index 2c048148..8a667176 100644
--- a/doc/ale-html.txt
+++ b/doc/ale-html.txt
@@ -29,6 +29,11 @@ g:ale_html_angular_use_global *g:ale_html_angular_use_global*
===============================================================================
+cspell *ale-html-cspell*
+
+See |ale-cspell-options|
+
+===============================================================================
fecs *ale-html-fecs*
`fecs` options for HTML are the same as the options for JavaScript, and both
diff --git a/doc/ale-java.txt b/doc/ale-java.txt
index 6bd04ef9..fa38fd3a 100644
--- a/doc/ale-java.txt
+++ b/doc/ale-java.txt
@@ -42,6 +42,12 @@ g:ale_java_checkstyle_options *g:ale_java_checkstyle_options*
===============================================================================
+cspell *ale-java-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
javac *ale-java-javac*
g:ale_java_javac_classpath *g:ale_java_javac_classpath*
@@ -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'
<
diff --git a/doc/ale-javascript.txt b/doc/ale-javascript.txt
index acd886c9..087909c8 100644
--- a/doc/ale-javascript.txt
+++ b/doc/ale-javascript.txt
@@ -24,10 +24,17 @@ To this: >
<
===============================================================================
+cspell *ale-javascript-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
deno *ale-javascript-deno*
Check the docs over at |ale-typescript-deno|.
+
===============================================================================
eslint *ale-javascript-eslint*
diff --git a/doc/ale-json.txt b/doc/ale-json.txt
index ad0a05b1..a79add81 100644
--- a/doc/ale-json.txt
+++ b/doc/ale-json.txt
@@ -3,6 +3,12 @@ ALE JSON Integration *ale-json-options*
===============================================================================
+cspell *ale-json-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
eslint *ale-json-eslint*
The `eslint` linter for JSON uses the JavaScript options for `eslint`; see:
diff --git a/doc/ale-latex.txt b/doc/ale-latex.txt
index bedbabcd..b3029a5b 100644
--- a/doc/ale-latex.txt
+++ b/doc/ale-latex.txt
@@ -3,16 +3,19 @@ ALE LaTeX Integration *ale-latex-options*
===============================================================================
+cspell *ale-latex-cspell*
+
+===============================================================================
write-good *ale-latex-write-good*
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:
diff --git a/doc/ale-lua.txt b/doc/ale-lua.txt
index ac92b9ac..8b938ba0 100644
--- a/doc/ale-lua.txt
+++ b/doc/ale-lua.txt
@@ -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|
diff --git a/doc/ale-markdown.txt b/doc/ale-markdown.txt
index feb37fc9..25065b55 100644
--- a/doc/ale-markdown.txt
+++ b/doc/ale-markdown.txt
@@ -3,6 +3,12 @@ ALE Markdown Integration *ale-markdown-options*
===============================================================================
+cspell *ale-markdown-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
markdownlint *ale-markdown-markdownlint*
g:ale_markdown_markdownlint_options *g:ale_markdown_markdownlint_options*
@@ -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:
diff --git a/doc/ale-php.txt b/doc/ale-php.txt
index 1c9822dc..e4da97d3 100644
--- a/doc/ale-php.txt
+++ b/doc/ale-php.txt
@@ -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*
diff --git a/doc/ale-powershell.txt b/doc/ale-powershell.txt
index 485c9bd0..46bc6cfb 100644
--- a/doc/ale-powershell.txt
+++ b/doc/ale-powershell.txt
@@ -3,10 +3,16 @@ 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:
diff --git a/doc/ale-python.txt b/doc/ale-python.txt
index 10cc2897..7486d0b4 100644
--- a/doc/ale-python.txt
+++ b/doc/ale-python.txt
@@ -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|
@@ -249,12 +253,18 @@ g:ale_python_black_change_directory *g:ale_python_black_change_directory*
===============================================================================
+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*
diff --git a/doc/ale-restructuredtext.txt b/doc/ale-restructuredtext.txt
index e308b072..7af62133 100644
--- a/doc/ale-restructuredtext.txt
+++ b/doc/ale-restructuredtext.txt
@@ -3,6 +3,12 @@ ALE reStructuredText Integration *ale-restructuredtext-options*
===============================================================================
+cspell *ale-restructuredtext-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
textlint *ale-restructuredtext-textlint*
To use textlint at reStructuredText, please install `textlint-plugin-rst`.
@@ -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:
diff --git a/doc/ale-ruby.txt b/doc/ale-ruby.txt
index 69c643a9..4bc25b1a 100644
--- a/doc/ale-ruby.txt
+++ b/doc/ale-ruby.txt
@@ -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*
@@ -213,6 +220,4 @@ g:ale_ruby_standardrb_options *g:ale_ruby_standardrb_options*
===============================================================================
-
-===============================================================================
vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
diff --git a/doc/ale-rust.txt b/doc/ale-rust.txt
index 3aa63673..707943a7 100644
--- a/doc/ale-rust.txt
+++ b/doc/ale-rust.txt
@@ -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|
@@ -188,6 +185,12 @@ g:ale_rust_cargo_target_dir
===============================================================================
+cspell *ale-rust-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
rls *ale-rust-rls*
g:ale_rust_rls_executable *g:ale_rust_rls_executable*
diff --git a/doc/ale-scala.txt b/doc/ale-scala.txt
index c9638baf..0b0f1a9a 100644
--- a/doc/ale-scala.txt
+++ b/doc/ale-scala.txt
@@ -3,6 +3,12 @@ ALE Scala Integration *ale-scala-options*
===============================================================================
+cspell *ale-scala-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
metals *ale-scala-metals*
`metals` requires either an SBT project, a Mill project, or a running Bloop
diff --git a/doc/ale-sh.txt b/doc/ale-sh.txt
index c06f737a..9a1928c4 100644
--- a/doc/ale-sh.txt
+++ b/doc/ale-sh.txt
@@ -26,6 +26,12 @@ g:ale_sh_bashate_options *g:ale_sh_bashate_options*
<
===============================================================================
+cspell *ale-sh-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
sh-language-server *ale-sh-language-server*
g:ale_sh_language_server_executable *g:ale_sh_language_server_executable*
diff --git a/doc/ale-supported-languages-and-tools.txt b/doc/ale-supported-languages-and-tools.txt
index 94d57345..3324903f 100644
--- a/doc/ale-supported-languages-and-tools.txt
+++ b/doc/ale-supported-languages-and-tools.txt
@@ -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
diff --git a/doc/ale-swift.txt b/doc/ale-swift.txt
index 6d53ca7c..a443eab8 100644
--- a/doc/ale-swift.txt
+++ b/doc/ale-swift.txt
@@ -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`
@@ -41,6 +43,12 @@ g:ale_swift_appleswiftformat_use_swiftpm *g:ale_swift_appleswiftformat_use_swift
===============================================================================
+cspell *ale-swift-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
sourcekitlsp *ale-swift-sourcekitlsp*
To enable the SourceKit-LSP you need to install and build the executable as
@@ -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:
-
diff --git a/doc/ale-tex.txt b/doc/ale-tex.txt
index ceb9fa81..d5ef4783 100644
--- a/doc/ale-tex.txt
+++ b/doc/ale-tex.txt
@@ -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:
diff --git a/doc/ale-texinfo.txt b/doc/ale-texinfo.txt
index f8ed342d..53d42b69 100644
--- a/doc/ale-texinfo.txt
+++ b/doc/ale-texinfo.txt
@@ -3,10 +3,16 @@ ALE Texinfo Integration *ale-texinfo-options*
===============================================================================
+cspell *ale-texinfo-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
write-good *ale-texinfo-write-good*
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:
diff --git a/doc/ale-text.txt b/doc/ale-text.txt
index 913d7e61..4e4d0b2e 100644
--- a/doc/ale-text.txt
+++ b/doc/ale-text.txt
@@ -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:
diff --git a/doc/ale-typescript.txt b/doc/ale-typescript.txt
index 8984e183..eefcfed1 100644
--- a/doc/ale-typescript.txt
+++ b/doc/ale-typescript.txt
@@ -3,6 +3,12 @@ ALE TypeScript Integration *ale-typescript-options*
===============================================================================
+cspell *ale-typescript-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
deno *ale-typescript-deno*
Starting from version 1.6.0, Deno comes with its own language server. Earlier
@@ -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*
diff --git a/doc/ale-vue.txt b/doc/ale-vue.txt
index a2c2786f..5bf1e28d 100644
--- a/doc/ale-vue.txt
+++ b/doc/ale-vue.txt
@@ -3,6 +3,12 @@ ALE Vue Integration *ale-vue-options*
===============================================================================
+cspell *ale-vue-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
prettier *ale-vue-prettier*
See |ale-javascript-prettier| for information about the available options.
diff --git a/doc/ale-xhtml.txt b/doc/ale-xhtml.txt
index 3cc639ef..10ca5b82 100644
--- a/doc/ale-xhtml.txt
+++ b/doc/ale-xhtml.txt
@@ -3,10 +3,16 @@ ALE XHTML Integration *ale-xhtml-options*
===============================================================================
+cspell *ale-xhtml-cspell*
+
+See |ale-cspell-options|
+
+
+===============================================================================
write-good *ale-xhtml-write-good*
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:
diff --git a/doc/ale.txt b/doc/ale.txt
index 88835add..178ce314 100644
--- a/doc/ale.txt
+++ b/doc/ale.txt
@@ -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|
diff --git a/supported-tools.md b/supported-tools.md
index 33a12ae6..23d3dc72 100644
--- a/supported-tools.md
+++ b/supported-tools.md
@@ -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
diff --git a/test/handler/test_cspell_handler.vader b/test/handler/test_cspell_handler.vader
new file mode 100644
index 00000000..b74b8d22
--- /dev/null
+++ b/test/handler/test_cspell_handler.vader
@@ -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)'
+ \)
diff --git a/test/linter/test_cspell.vader b/test/linter/test_cspell.vader
new file mode 100644
index 00000000..7a72be44
--- /dev/null
+++ b/test/linter/test_cspell.vader
@@ -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'
+
diff --git a/test/test-files/cspell/node-modules-2/node_modules/cspell/bin.js b/test/test-files/cspell/node-modules-2/node_modules/cspell/bin.js
new file mode 100755
index 00000000..e69de29b
--- /dev/null
+++ b/test/test-files/cspell/node-modules-2/node_modules/cspell/bin.js
diff --git a/test/test-files/cspell/node-modules/node_modules/.bin/cspell b/test/test-files/cspell/node-modules/node_modules/.bin/cspell
new file mode 100755
index 00000000..e69de29b
--- /dev/null
+++ b/test/test-files/cspell/node-modules/node_modules/.bin/cspell