summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorw0rp <w0rp@users.noreply.github.com>2018-10-25 15:38:33 +0100
committerGitHub <noreply@github.com>2018-10-25 15:38:33 +0100
commit320c74ce1a28bfb4f2e10e1efcd2ca93701fc00e (patch)
tree72a2860d0a2660e8f32dd67a087973992508b0b6 /doc
parent3e65e85178d144c464702570fc20b88fd5e2e20e (diff)
parentadad9a21ab3fa16b115c044de3c46d98b577f72b (diff)
downloadale-320c74ce1a28bfb4f2e10e1efcd2ca93701fc00e.zip
Merge pull request #1958 from Garland-g/perl6
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 38fbbfab..7e37d2dc 100644
--- a/doc/ale.txt
+++ b/doc/ale.txt
@@ -209,6 +209,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|
@@ -446,6 +448,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`
@@ -1331,6 +1334,7 @@ g:ale_linters *g:ale_linters*
\ 'hack': ['hack'],
\ 'help': [],
\ 'perl': ['perlcritic'],
+ \ 'perl6': [],
\ 'python': ['flake8', 'mypy', 'pylint'],
\ 'rust': ['cargo'],
\ 'spec': [],