summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorTravis Gibson <TGib.Travis@protonmail.com>2018-09-28 16:18:40 -0700
committerTravis Gibson <TGib.Travis@protonmail.com>2018-09-28 16:18:40 -0700
commit2b2e766dc6df4d05e58c106f51b5444be4efbcea (patch)
tree516ff2921e8d6e96c00a93880caa068df07a3f24 /doc
parenta8915d885b79ba8e243c228c9f38dddbcb1c479a (diff)
downloadale-2b2e766dc6df4d05e58c106f51b5444be4efbcea.zip
Add Perl6 support via 'perl6 -c'
Diffstat (limited to 'doc')
-rw-r--r--doc/ale-perl6.txt43
-rw-r--r--doc/ale.txt4
2 files changed, 47 insertions, 0 deletions
diff --git a/doc/ale-perl6.txt b/doc/ale-perl6.txt
new file mode 100644
index 00000000..94953db5
--- /dev/null
+++ b/doc/ale-perl6.txt
@@ -0,0 +1,43 @@
+===============================================================================
+ALE Perl6 Integration *ale-perl6-options*
+
+Checking code with `perl6` is disabled by default, as `perl6` code cannot be
+checked without executing it. Specifically, we use the `-c` flag to see if
+`perl6` code compiles. This does not execute all of the code in a file, but it
+does run `BEGIN` and `CHECK` blocks. See `perl6 --help`
+
+Full support requires a perl6 implementation that supports the
+PERL6_EXCEPTIONS_HANDLER environment variable and JSON error output,
+which was specified in 6.d. Rakudo version 2018.08 is the first rakudo release
+that supports this. See `perl6 --version` and
+https://docs.perl6.org/programs/03-environment-variables.
+
+Without this variable, errors and warnings will appear at line 1, and can be
+viewed with ALEDetail. This also serves as a fallback for errors and warnings
+that do not trigger JSON output.
+
+See |g:ale_linters|.
+
+
+===============================================================================
+perl6 *ale-perl6-perl6*
+
+g:ale_perl6_perl6_executable *g:ale_perl6_perl6_executable*
+ *b:ale_perl6_perl6_executable*
+ Type: |String|
+ Default: `'perl6'`
+
+ This variable can be changed to modify the executable used for linting
+ perl6.
+
+
+g:ale_perl6_perl6_options *g:ale_perl6_perl6_options*
+ *b:ale_perl6_perl6_options*
+ Type: |String|
+ Default: `'-c -Ilib'`
+
+ This variable can be changed to alter the command-line arguments to the
+ perl6 invocation.
+
+===============================================================================
+ vim:tw=78:ts=2:sts=2:sw=2:ft=help:norl:
diff --git a/doc/ale.txt b/doc/ale.txt
index 3c561e2f..24d69fb2 100644
--- a/doc/ale.txt
+++ b/doc/ale.txt
@@ -203,6 +203,8 @@ CONTENTS *ale-contents*
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|
@@ -438,6 +440,7 @@ Notes:
* OCaml: `merlin` (see |ale-ocaml-merlin|), `ols`, `ocamlformat`
* Pawn: `uncrustify`
* Perl: `perl -c`, `perl-critic`, `perltidy`
+* Perl6: `perl6 -c`
* PHP: `langserver`, `phan`, `php -l`, `phpcs`, `phpmd`, `phpstan`, `phpcbf`, `php-cs-fixer`, `psalm`!!
* PO: `alex`!!, `msgfmt`, `proselint`, `write-good`
* Pod: `alex`!!, `proselint`, `write-good`
@@ -1306,6 +1309,7 @@ g:ale_linters *g:ale_linters*
\ 'hack': ['hack'],
\ 'help': [],
\ 'perl': ['perlcritic'],
+ \ 'perl6': [],
\ 'python': ['flake8', 'mypy', 'pylint'],
\ 'rust': ['cargo'],
\ 'spec': [],