This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
spacemacs/layers/+lang/perl6/README.org
2019-05-15 21:08:21 +03:00

48 lines
1.7 KiB
Org Mode

#+TITLE: perl6 layer
#+TAGS: general|layer|multi-paradigm|programming
[[file:img/camelia-logo.png]]
* Table of Contents :TOC_5_gh:noexport:
- [[#description][Description]]
- [[#features][Features:]]
- [[#install][Install]]
- [[#layer][Layer]]
- [[#jump-to-definition][Jump to definition]]
- [[#key-bindings][Key bindings]]
* Description
This layer provides an environment for the [[https://perl6.org/][Perl 6 Programming Language]].
** Features:
- Jump to definition & Code completion via [[https://github.com/universal-ctags/ctags][ctags-universal]]
- Syntax checking via [[https://github.com/hinrik/flycheck-perl6][flycheck-perl6]] and =perl6 -c=
- Syntax highlighting & Syntax indentation via [[https://github.com/hinrik/perl6-mode][perl6-mode]]
- =META6.json= highlighting via [[https://github.com/joshwnj/json-mode][json-mode]]
- Provides Evil text objects for:
- double-angle-brackets
- corner-brackets
- single-quotation-marks
- double-quotation-marks
* Install
** Layer
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =perl6= to the existing =dotspacemacs-configuration-layers= list in this
file.
** Jump to definition
Jump to definition requires [[https://github.com/universal-ctags/ctags][ctags-universal]] to be be installed.
Then you can generate the =TAGS= file for your projects like this:
#+BEGIN_SRC shell
ctags -e -Ra lib t/
ctags -e -Ra --language-force=Perl6 bin/ $YOUR_PERL_PATH/share/perl6/site/sources/
#+END_SRC
* Key bindings
| Key binding | Description |
|-------------+------------------------------------------------|
| ~SPC m g g~ | Jump to definition (requires =ctags-universal= |