summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rw-r--r--doc/ale.txt494
-rwxr-xr-xtest/script/check-toc17
3 files changed, 440 insertions, 73 deletions
diff --git a/README.md b/README.md
index 6e5e26ec..047f9691 100644
--- a/README.md
+++ b/README.md
@@ -100,7 +100,7 @@ new buffers or as you make edits to your files.
The behaviour of linting can be configured with a variety of options,
documented in [the Vim help file](doc/ale.txt). For more information on the
options ALE offers, consult `:help ale-options` for global options and `:help
-ale-linter-options` for options specified to particular linters.
+ale-integration-options` for options specified to particular linters.
<a name="usage-fixing"></a>
diff --git a/doc/ale.txt b/doc/ale.txt
index 0fb059f9..85d4de3b 100644
--- a/doc/ale.txt
+++ b/doc/ale.txt
@@ -20,9 +20,33 @@ CONTENTS *ale-contents*
5.6 Symbol Search.....................|ale-symbol-search|
6. Global Options.......................|ale-options|
6.1 Highlights........................|ale-highlights|
- 6.2 Options for alex Linter...........|ale-alex-options|
- 6.3 Options for write-good Linter.....|ale-write-good-options|
- 7. Integration Documentation............|ale-integrations|
+ 7. Linter/Fixer Options.................|ale-integration-options|
+ 7.1 Options for alex..................|ale-alex-options|
+ 7.2 Options for write-good............|ale-write-good-options|
+ 7.3 Other Linter/Fixer Options........|ale-other-integration-options|
+ 8. Commands/Keybinds....................|ale-commands|
+ 9. API..................................|ale-api|
+ 10. Special Thanks......................|ale-special-thanks|
+ 11. Contact.............................|ale-contact|
+
+===============================================================================
+1. Introduction *ale-introduction*
+
+ALE provides the means to run linters asynchronously in Vim in a variety of
+languages and tools. ALE sends the contents of buffers to linter programs
+using the |job-control| features available in Vim 8 and NeoVim. For Vim 8,
+Vim must be compiled with the |job| and |channel| and |timers| features
+as a minimum.
+
+ALE supports the following key features for linting:
+
+1. Running linters when text is changed.
+2. Running linters when files are opened.
+3. Running linters when files are saved. (When a global flag is set.)
+4. Populating the |loclist| with warning and errors.
+5. Setting |signs| with warnings and errors for error markers.
+6. Using |echo| to show error messages when the cursor moves.
+7. Setting syntax highlights for errors.
ada...................................|ale-ada-options|
gcc.................................|ale-ada-gcc|
ansible...............................|ale-ansible-options|
@@ -378,29 +402,6 @@ CONTENTS *ale-contents*
yamllint............................|ale-yaml-yamllint|
yang..................................|ale-yang-options|
yang-lsp............................|ale-yang-lsp|
- 8. Commands/Keybinds....................|ale-commands|
- 9. API..................................|ale-api|
- 10. Special Thanks......................|ale-special-thanks|
- 11. Contact.............................|ale-contact|
-
-===============================================================================
-1. Introduction *ale-introduction*
-
-ALE provides the means to run linters asynchronously in Vim in a variety of
-languages and tools. ALE sends the contents of buffers to linter programs
-using the |job-control| features available in Vim 8 and NeoVim. For Vim 8,
-Vim must be compiled with the |job| and |channel| and |timers| features
-as a minimum.
-
-ALE supports the following key features for linting:
-
-1. Running linters when text is changed.
-2. Running linters when files are opened.
-3. Running linters when files are saved. (When a global flag is set.)
-4. Populating the |loclist| with warning and errors.
-5. Setting |signs| with warnings and errors for error markers.
-6. Using |echo| to show error messages when the cursor moves.
-7. Setting syntax highlights for errors.
ALE can fix problems with files with the |ALEFix| command, using the same job
control functionality used for checking for problems. Try using the
@@ -2105,11 +2106,45 @@ ALEWarningSign *ALEWarningSign*
The highlight for warning signs. See |g:ale_set_signs|.
+===============================================================================
+7. Linter/Fixer Options *ale-integration-options*
+
+Linter and fixer options are documented below and in individual help files.
+
+Every option for programs can be set globally, or individually for each
+buffer. For example, `b:ale_python_flake8_executable` will override any
+values set for `g:ale_python_flake8_executable`.
+
+ *ale-integrations-local-executables*
+
+Some tools will prefer to search for locally-installed executables, unless
+configured otherwise. For example, the `eslint` linter will search for
+various executable paths in `node_modules`. The `flake8` linter will search
+for virtualenv directories.
+
+If you prefer to use global executables for those tools, set the relevant
+`_use_global` and `_executable` options for those linters. >
+
+ " Use the global executable with a special name for eslint.
+ let g:ale_javascript_eslint_executable = 'special-eslint'
+ let g:ale_javascript_eslint_use_global = 1
+
+ " Use the global executable with a special name for flake8.
+ let g:ale_python_flake8_executable = '/foo/bar/flake8'
+ let g:ale_python_flake8_use_global = 1
+<
+|g:ale_use_global_executables| can be set to `1` in your vimrc file to make
+ALE use global executables for all linters by default.
+
+The option |g:ale_virtualenv_dir_names| controls the local virtualenv paths
+ALE will use to search for Python executables.
+
+
-------------------------------------------------------------------------------
-6.2. Options for alex *ale-alex-options*
+7.1. Options for alex *ale-alex-options*
-The options for the alex linter are global because it does not make sense to
-have them specified on a per-language basis.
+The options for `alex` are shared between all filetypes, so options can be
+configured once.
g:ale_alex_executable *g:ale_alex_executable*
*b:ale_alex_executable*
@@ -2128,10 +2163,10 @@ g:ale_alex_use_global *g:ale_alex_use_global*
-------------------------------------------------------------------------------
-6.3. Options for write-good *ale-write-good-options*
+7.2. Options for write-good *ale-write-good-options*
-The options for the write-good linter are global because it does not make
-sense to have them specified on a per-language basis.
+The options for `write-good` are shared between all filetypes, so options can
+be configured once.
g:ale_writegood_executable *g:ale_writegood_executable*
*b:ale_writegood_executable*
@@ -2157,40 +2192,367 @@ g:ale_writegood_use_global *g:ale_writegood_use_global*
See |ale-integrations-local-executables|
-===============================================================================
-7. Integration Documentation *ale-integrations*
-
-Linter and fixer options are documented in individual help files. See the
-table of contents at |ale-contents|.
-
-Every option for programs can be set globally, or individually for each
-buffer. For example, `b:ale_python_flake8_executable` will override any
-values set for `g:ale_python_flake8_executable`.
-
- *ale-integrations-local-executables*
-
-Some tools will prefer to search for locally-installed executables, unless
-configured otherwise. For example, the `eslint` linter will search for
-various executable paths in `node_modules`. The `flake8` linter will search
-for virtualenv directories.
-
-If you prefer to use global executables for those tools, set the relevant
-`_use_global` and `_executable` options for those linters. >
-
- " Use the global executable with a special name for eslint.
- let g:ale_javascript_eslint_executable = 'special-eslint'
- let g:ale_javascript_eslint_use_global = 1
-
- " Use the global executable with a special name for flake8.
- let g:ale_python_flake8_executable = '/foo/bar/flake8'
- let g:ale_python_flake8_use_global = 1
-<
-
-|g:ale_use_global_executables| can be set to `1` in your vimrc file to make
-ALE use global executables for all linters by default.
-
-The option |g:ale_virtualenv_dir_names| controls the local virtualenv paths
-ALE will use to search for Python executables.
+-------------------------------------------------------------------------------
+7.3. 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|
+ gcc...................................|ale-ada-gcc|
+ ansible.................................|ale-ansible-options|
+ ansible-lint..........................|ale-ansible-ansible-lint|
+ asciidoc................................|ale-asciidoc-options|
+ write-good............................|ale-asciidoc-write-good|
+ textlint..............................|ale-asciidoc-textlint|
+ asm.....................................|ale-asm-options|
+ gcc...................................|ale-asm-gcc|
+ awk.....................................|ale-awk-options|
+ gawk..................................|ale-awk-gawk|
+ bib.....................................|ale-bib-options|
+ bibclean..............................|ale-bib-bibclean|
+ c.......................................|ale-c-options|
+ clang.................................|ale-c-clang|
+ clangd................................|ale-c-clangd|
+ clang-format..........................|ale-c-clangformat|
+ clangtidy.............................|ale-c-clangtidy|
+ cppcheck..............................|ale-c-cppcheck|
+ cquery................................|ale-c-cquery|
+ flawfinder............................|ale-c-flawfinder|
+ gcc...................................|ale-c-gcc|
+ uncrustify............................|ale-c-uncrustify|
+ ccls..................................|ale-c-ccls|
+ chef....................................|ale-chef-options|
+ foodcritic............................|ale-chef-foodcritic|
+ clojure.................................|ale-clojure-options|
+ joker.................................|ale-clojure-joker|
+ cloudformation..........................|ale-cloudformation-options|
+ cfn-python-lint.......................|ale-cloudformation-cfn-python-lint|
+ cmake...................................|ale-cmake-options|
+ cmakelint.............................|ale-cmake-cmakelint|
+ cmake-format..........................|ale-cmake-cmakeformat|
+ cpp.....................................|ale-cpp-options|
+ clang.................................|ale-cpp-clang|
+ clangd................................|ale-cpp-clangd|
+ clangcheck............................|ale-cpp-clangcheck|
+ clang-format..........................|ale-cpp-clangformat|
+ clangtidy.............................|ale-cpp-clangtidy|
+ clazy.................................|ale-cpp-clazy|
+ cppcheck..............................|ale-cpp-cppcheck|
+ cpplint...............................|ale-cpp-cpplint|
+ cquery................................|ale-cpp-cquery|
+ flawfinder............................|ale-cpp-flawfinder|
+ gcc...................................|ale-cpp-gcc|
+ uncrustify............................|ale-cpp-uncrustify|
+ ccls..................................|ale-cpp-ccls|
+ c#......................................|ale-cs-options|
+ mcs...................................|ale-cs-mcs|
+ mcsc..................................|ale-cs-mcsc|
+ uncrustify............................|ale-cs-uncrustify|
+ css.....................................|ale-css-options|
+ prettier..............................|ale-css-prettier|
+ stylelint.............................|ale-css-stylelint|
+ cuda....................................|ale-cuda-options|
+ nvcc..................................|ale-cuda-nvcc|
+ d.......................................|ale-d-options|
+ dls...................................|ale-d-dls|
+ uncrustify............................|ale-d-uncrustify|
+ dart....................................|ale-dart-options|
+ dartanalyzer..........................|ale-dart-dartanalyzer|
+ dartfmt...............................|ale-dart-dartfmt|
+ dockerfile..............................|ale-dockerfile-options|
+ dockerfile_lint.......................|ale-dockerfile-dockerfile_lint|
+ hadolint..............................|ale-dockerfile-hadolint|
+ elixir..................................|ale-elixir-options|
+ mix...................................|ale-elixir-mix|
+ mix_format............................|ale-elixir-mix-format|
+ dialyxir..............................|ale-elixir-dialyxir|
+ elixir-ls.............................|ale-elixir-elixir-ls|
+ elm.....................................|ale-elm-options|
+ elm-format............................|ale-elm-elm-format|
+ elm-make..............................|ale-elm-elm-make|
+ erlang..................................|ale-erlang-options|
+ erlc..................................|ale-erlang-erlc|
+ syntaxerl.............................|ale-erlang-syntaxerl|
+ eruby...................................|ale-eruby-options|
+ ruumba................................|ale-eruby-ruumba|
+ fish....................................|ale-fish-options|
+ fortran.................................|ale-fortran-options|
+ gcc...................................|ale-fortran-gcc|
+ language_server.......................|ale-fortran-language-server|
+ fountain................................|ale-fountain-options|
+ fusionscript............................|ale-fuse-options|
+ fusion-lint...........................|ale-fuse-fusionlint|
+ git commit..............................|ale-gitcommit-options|
+ gitlint...............................|ale-gitcommit-gitlint|
+ glsl....................................|ale-glsl-options|
+ glslang...............................|ale-glsl-glslang|
+ glslls................................|ale-glsl-glslls|
+ go......................................|ale-go-options|
+ gobuild...............................|ale-go-gobuild|
+ gofmt.................................|ale-go-gofmt|
+ golint................................|ale-go-golint|
+ govet.................................|ale-go-govet|
+ gometalinter..........................|ale-go-gometalinter|
+ staticcheck...........................|ale-go-staticcheck|
+ golangserver..........................|ale-go-golangserver|
+ golangci-lint.........................|ale-go-golangci-lint|
+ bingo.................................|ale-go-bingo|
+ graphql.................................|ale-graphql-options|
+ eslint................................|ale-graphql-eslint|
+ gqlint................................|ale-graphql-gqlint|
+ prettier..............................|ale-graphql-prettier|
+ hack....................................|ale-hack-options|
+ hack..................................|ale-hack-hack|
+ hackfmt...............................|ale-hack-hackfmt|
+ hhast.................................|ale-hack-hhast|
+ handlebars..............................|ale-handlebars-options|
+ ember-template-lint...................|ale-handlebars-embertemplatelint|
+ haskell.................................|ale-haskell-options|
+ brittany..............................|ale-haskell-brittany|
+ ghc...................................|ale-haskell-ghc|
+ ghc-mod...............................|ale-haskell-ghc-mod|
+ cabal-ghc.............................|ale-haskell-cabal-ghc|
+ hdevtools.............................|ale-haskell-hdevtools|
+ hfmt..................................|ale-haskell-hfmt|
+ hlint.................................|ale-haskell-hlint|
+ stack-build...........................|ale-haskell-stack-build|
+ stack-ghc.............................|ale-haskell-stack-ghc|
+ stylish-haskell.......................|ale-haskell-stylish-haskell|
+ hie...................................|ale-haskell-hie|
+ hcl.....................................|ale-hcl-options|
+ terraform-fmt.........................|ale-hcl-terraform-fmt|
+ html....................................|ale-html-options|
+ htmlhint..............................|ale-html-htmlhint|
+ tidy..................................|ale-html-tidy|
+ prettier..............................|ale-html-prettier|
+ stylelint.............................|ale-html-stylelint|
+ write-good............................|ale-html-write-good|
+ idris...................................|ale-idris-options|
+ idris.................................|ale-idris-idris|
+ ispc....................................|ale-ispc-options|
+ ispc..................................|ale-ispc-ispc|
+ java....................................|ale-java-options|
+ checkstyle............................|ale-java-checkstyle|
+ javac.................................|ale-java-javac|
+ google-java-format....................|ale-java-google-java-format|
+ pmd...................................|ale-java-pmd|
+ javalsp...............................|ale-java-javalsp|
+ uncrustify............................|ale-java-uncrustify|
+ javascript..............................|ale-javascript-options|
+ eslint................................|ale-javascript-eslint|
+ flow..................................|ale-javascript-flow|
+ importjs..............................|ale-javascript-importjs|
+ jscs..................................|ale-javascript-jscs|
+ jshint................................|ale-javascript-jshint|
+ prettier..............................|ale-javascript-prettier|
+ prettier-eslint.......................|ale-javascript-prettier-eslint|
+ prettier-standard.....................|ale-javascript-prettier-standard|
+ standard..............................|ale-javascript-standard|
+ xo....................................|ale-javascript-xo|
+ json....................................|ale-json-options|
+ fixjson...............................|ale-json-fixjson|
+ jsonlint..............................|ale-json-jsonlint|
+ jq....................................|ale-json-jq|
+ prettier..............................|ale-json-prettier|
+ julia...................................|ale-julia-options|
+ languageserver........................|ale-julia-languageserver|
+ kotlin..................................|ale-kotlin-options|
+ kotlinc...............................|ale-kotlin-kotlinc|
+ ktlint................................|ale-kotlin-ktlint|
+ languageserver........................|ale-kotlin-languageserver|
+ latex...................................|ale-latex-options|
+ write-good............................|ale-latex-write-good|
+ textlint..............................|ale-latex-textlint|
+ less....................................|ale-less-options|
+ lessc.................................|ale-less-lessc|
+ prettier..............................|ale-less-prettier|
+ stylelint.............................|ale-less-stylelint|
+ llvm....................................|ale-llvm-options|
+ llc...................................|ale-llvm-llc|
+ lua.....................................|ale-lua-options|
+ luac..................................|ale-lua-luac|
+ luacheck..............................|ale-lua-luacheck|
+ markdown................................|ale-markdown-options|
+ mdl...................................|ale-markdown-mdl|
+ prettier..............................|ale-markdown-prettier|
+ remark-lint...........................|ale-markdown-remark-lint|
+ textlint..............................|ale-markdown-textlint|
+ write-good............................|ale-markdown-write-good|
+ mercury.................................|ale-mercury-options|
+ mmc...................................|ale-mercury-mmc|
+ nasm....................................|ale-nasm-options|
+ nasm..................................|ale-nasm-nasm|
+ nroff...................................|ale-nroff-options|
+ write-good............................|ale-nroff-write-good|
+ objc....................................|ale-objc-options|
+ clang.................................|ale-objc-clang|
+ clangd................................|ale-objc-clangd|
+ uncrustify............................|ale-objc-uncrustify|
+ ccls..................................|ale-objc-ccls|
+ objcpp..................................|ale-objcpp-options|
+ clang.................................|ale-objcpp-clang|
+ clangd................................|ale-objcpp-clangd|
+ uncrustify............................|ale-objcpp-uncrustify|
+ ocaml...................................|ale-ocaml-options|
+ merlin................................|ale-ocaml-merlin|
+ ols...................................|ale-ocaml-ols|
+ ocamlformat...........................|ale-ocaml-ocamlformat|
+ pawn....................................|ale-pawn-options|
+ uncrustify............................|ale-pawn-uncrustify|
+ perl....................................|ale-perl-options|
+ perl..................................|ale-perl-perl|
+ perlcritic............................|ale-perl-perlcritic|
+ perltidy..............................|ale-perl-perltidy|
+ perl6...................................|ale-perl6-options|
+ perl6.................................|ale-perl6-perl6|
+ php.....................................|ale-php-options|
+ langserver............................|ale-php-langserver|
+ phan..................................|ale-php-phan|
+ phpcbf................................|ale-php-phpcbf|
+ phpcs.................................|ale-php-phpcs|
+ phpmd.................................|ale-php-phpmd|
+ phpstan...............................|ale-php-phpstan|
+ psalm.................................|ale-php-psalm|
+ php-cs-fixer..........................|ale-php-php-cs-fixer|
+ php...................................|ale-php-php|
+ po......................................|ale-po-options|
+ write-good............................|ale-po-write-good|
+ pod.....................................|ale-pod-options|
+ write-good............................|ale-pod-write-good|
+ pony....................................|ale-pony-options|
+ ponyc.................................|ale-pony-ponyc|
+ prolog..................................|ale-prolog-options|
+ swipl.................................|ale-prolog-swipl|
+ proto...................................|ale-proto-options|
+ protoc-gen-lint.......................|ale-proto-protoc-gen-lint|
+ pug.....................................|ale-pug-options|
+ puglint...............................|ale-pug-puglint|
+ puppet..................................|ale-puppet-options|
+ puppet................................|ale-puppet-puppet|
+ puppetlint............................|ale-puppet-puppetlint|
+ puppet-languageserver.................|ale-puppet-languageserver|
+ pyrex (cython)..........................|ale-pyrex-options|
+ cython................................|ale-pyrex-cython|
+ python..................................|ale-python-options|
+ autopep8..............................|ale-python-autopep8|
+ bandit................................|ale-python-bandit|
+ black.................................|ale-python-black|
+ flake8................................|ale-python-flake8|
+ isort.................................|ale-python-isort|
+ mypy..................................|ale-python-mypy|
+ prospector............................|ale-python-prospector|
+ pycodestyle...........................|ale-python-pycodestyle|
+ pydocstyle............................|ale-python-pydocstyle|
+ pyflakes..............................|ale-python-pyflakes|
+ pylama................................|ale-python-pylama|
+ pylint................................|ale-python-pylint|
+ pyls..................................|ale-python-pyls|
+ pyre..................................|ale-python-pyre|
+ vulture...............................|ale-python-vulture|
+ yapf..................................|ale-python-yapf|
+ qml.....................................|ale-qml-options|
+ qmlfmt................................|ale-qml-qmlfmt|
+ r.......................................|ale-r-options|
+ lintr.................................|ale-r-lintr|
+ reasonml................................|ale-reasonml-options|
+ merlin................................|ale-reasonml-merlin|
+ ols...................................|ale-reasonml-ols|
+ refmt.................................|ale-reasonml-refmt|
+ restructuredtext........................|ale-restructuredtext-options|
+ textlint..............................|ale-restructuredtext-textlint|
+ write-good............................|ale-restructuredtext-write-good|
+ ruby....................................|ale-ruby-options|
+ brakeman..............................|ale-ruby-brakeman|
+ rails_best_practices..................|ale-ruby-rails_best_practices|
+ reek..................................|ale-ruby-reek|
+ rubocop...............................|ale-ruby-rubocop|
+ ruby..................................|ale-ruby-ruby|
+ rufo..................................|ale-ruby-rufo|
+ solargraph............................|ale-ruby-solargraph|
+ standardrb............................|ale-ruby-standardrb|
+ rust....................................|ale-rust-options|
+ cargo.................................|ale-rust-cargo|
+ rls...................................|ale-rust-rls|
+ rustc.................................|ale-rust-rustc|
+ rustfmt...............................|ale-rust-rustfmt|
+ sass....................................|ale-sass-options|
+ sasslint..............................|ale-sass-sasslint|
+ stylelint.............................|ale-sass-stylelint|
+ scala...................................|ale-scala-options|
+ sbtserver.............................|ale-scala-sbtserver|
+ scalafmt..............................|ale-scala-scalafmt|
+ scalastyle............................|ale-scala-scalastyle|
+ scss....................................|ale-scss-options|
+ prettier..............................|ale-scss-prettier|
+ sasslint..............................|ale-scss-sasslint|
+ stylelint.............................|ale-scss-stylelint|
+ sh......................................|ale-sh-options|
+ sh-language-server....................|ale-sh-language-server|
+ shell.................................|ale-sh-shell|
+ shellcheck............................|ale-sh-shellcheck|
+ shfmt.................................|ale-sh-shfmt|
+ sml.....................................|ale-sml-options|
+ smlnj.................................|ale-sml-smlnj|
+ solidity................................|ale-solidity-options|
+ solhint...............................|ale-solidity-solhint|
+ solium................................|ale-solidity-solium|
+ spec....................................|ale-spec-options|
+ rpmlint...............................|ale-spec-rpmlint|
+ sql.....................................|ale-sql-options|
+ sqlfmt................................|ale-sql-sqlfmt|
+ stylus..................................|ale-stylus-options|
+ stylelint.............................|ale-stylus-stylelint|
+ sugarss.................................|ale-sugarss-options|
+ stylelint.............................|ale-sugarss-stylelint|
+ tcl.....................................|ale-tcl-options|
+ nagelfar..............................|ale-tcl-nagelfar|
+ terraform...............................|ale-terraform-options|
+ fmt...................................|ale-terraform-fmt|
+ tflint................................|ale-terraform-tflint|
+ tex.....................................|ale-tex-options|
+ chktex................................|ale-tex-chktex|
+ lacheck...............................|ale-tex-lacheck|
+ texinfo.................................|ale-texinfo-options|
+ write-good............................|ale-texinfo-write-good|
+ text....................................|ale-text-options|
+ textlint..............................|ale-text-textlint|
+ write-good............................|ale-text-write-good|
+ thrift..................................|ale-thrift-options|
+ thrift................................|ale-thrift-thrift|
+ typescript..............................|ale-typescript-options|
+ eslint................................|ale-typescript-eslint|
+ prettier..............................|ale-typescript-prettier|
+ tslint................................|ale-typescript-tslint|
+ tsserver..............................|ale-typescript-tsserver|
+ vala....................................|ale-vala-options|
+ uncrustify............................|ale-vala-uncrustify|
+ verilog/systemverilog...................|ale-verilog-options|
+ iverilog..............................|ale-verilog-iverilog|
+ verilator.............................|ale-verilog-verilator|
+ vlog..................................|ale-verilog-vlog|
+ xvlog.................................|ale-verilog-xvlog|
+ vhdl....................................|ale-vhdl-options|
+ ghdl..................................|ale-vhdl-ghdl|
+ vcom..................................|ale-vhdl-vcom|
+ xvhdl.................................|ale-vhdl-xvhdl|
+ vim.....................................|ale-vim-options|
+ vint..................................|ale-vim-vint|
+ vim help................................|ale-vim-help-options|
+ write-good............................|ale-vim-help-write-good|
+ vue.....................................|ale-vue-options|
+ prettier..............................|ale-vue-prettier|
+ vls...................................|ale-vue-vls|
+ xhtml...................................|ale-xhtml-options|
+ write-good............................|ale-xhtml-write-good|
+ xml.....................................|ale-xml-options|
+ xmllint...............................|ale-xml-xmllint|
+ yaml....................................|ale-yaml-options|
+ prettier..............................|ale-yaml-prettier|
+ swaglint..............................|ale-yaml-swaglint|
+ yamllint..............................|ale-yaml-yamllint|
+ yang....................................|ale-yang-options|
+ yang-lsp..............................|ale-yang-lsp|
===============================================================================
diff --git a/test/script/check-toc b/test/script/check-toc
index 09d794ee..f3a57ed2 100755
--- a/test/script/check-toc
+++ b/test/script/check-toc
@@ -6,19 +6,24 @@ set -u
# This script checks that the table of contents for the supported tools is
# sorted, and that the table matches the files.
-toc_start_line="$( \
- grep -m1 -n 'Integration Documentation.*|ale-integrations|' doc/ale.txt \
+toc_section_start_line="$(
+ grep -m1 -n '^7\..*\*ale-other-integration-options\*' doc/ale.txt \
+ | sed 's/\([0-9]*\).*/\1/' \
+)"
+toc_start_offset="$( \
+ tail -n +"$toc_section_start_line" doc/ale.txt \
+ | grep -m1 -n '^ .*\.\.\.' \
| sed 's/\([0-9]*\).*/\1/' \
)"
# shellcheck disable=SC2003
-toc_start_line="$(expr "$toc_start_line" + 1)"
+toc_start_line="$(expr "$toc_section_start_line" + "$toc_start_offset" - 1)"
toc_section_size="$( \
tail -n +"$toc_start_line" doc/ale.txt \
- | grep -m1 -n '^ [0-9]\+\.' \
+ | grep -m1 -n '^===*$' \
| sed 's/\([0-9]*\).*/\1/' \
)"
# shellcheck disable=SC2003
-toc_end_line="$(expr "$toc_start_line" + "$toc_section_size" - 2)"
+toc_end_line="$(expr "$toc_start_line" + "$toc_section_size" - 4)"
toc_file="$(mktemp -t table-of-contents.XXXXXXXX)"
heading_file="$(mktemp -t headings.XXXXXXXX)"
@@ -26,7 +31,7 @@ tagged_toc_file="$(mktemp -t ale.txt.XXXXXXXX)"
sorted_toc_file="$(mktemp -t sorted-ale.txt.XXXXXXXX)"
sed -n "$toc_start_line,$toc_end_line"p doc/ale.txt \
- | sed 's/^ \( *[^.][^.]*\)\.\.*|\(..*\)|/\1, \2/' \
+ | sed 's/^ \( *[^.][^.]*\)\.\.*|\(..*\)|/\1, \2/' \
> "$toc_file"
# Get all of the doc files in a natural sorted order.