spacemacs/layers/+lang/perl6/packages.el
Bahtiar `kalkin-` Gadimov 4661bbf266 Add layer for the Perl 6 Programming Language
This layer provides the following features for the Perl 6 Programming Language:

* Jump to definition & Code completion via [ctags-universal](https://github.com/universal-ctags/ctags)
* Syntax checking via [flycheck-perl6](https://github.com/hinrik/flycheck-perl6)
* Syntax highlighting & Syntax indentation via [perl6-mode](https://github.com/hinrik/perl6-mode)
* `META6.json` highlighting via [json-mode](https://github.com/joshwnj/json-mode)
* Provides evil text objects for:
    * double-angle-brackets
    * corner-brackets
    * single-quotation-marks
    * double-quotation-marks

See also #5019
2017-04-09 15:18:04 -04:00

52 lines
1.5 KiB
EmacsLisp
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;;; packages.el --- perl6 layer packages file for Spacemacs.
;;
;; Copyright (c) 2012-2016 Sylvain Benner & Contributors
;;
;; Author: Bahtiar `kalkin-`''Gadimov <bahtiar@gadimov.de>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
;;; License: GPLv3
(defvar perl6-packages
'(company
flycheck
flycheck-perl6
perl6-mode
json-mode
)
)
(defun perl6/post-init-company ()
(spacemacs|add-company-backends
:backends company-capf
:modes perl6-mode))
(defun perl6/init-json-mode () (use-package json-mode :defer t))
(defun perl6/init-perl6-mode()
(use-package perl6-mode
:defer t
:init
(progn
(add-to-list 'spacemacs-jump-handlers-perl6-mode 'evil-jump-to-tag)
(add-to-list 'auto-mode-alist '("/perl6/site/sources/" . perl6-mode))
(when (configuration-layer/package-usedp 'company)
(push 'company-capf company-backends-perl6-mode)
)
(spacemacs|define-text-object "«" "double-angle-bracket" "«" "»")
(spacemacs|define-text-object "" "corner-bracket" "" "")
(spacemacs|define-text-object "" "single-quotation-mark" "" "")
(spacemacs|define-text-object "" "double-quotation-mark" "" "")
)
)
)
(defun perl6/init-flycheck-perl6 () (use-package flycheck-perl6 :ensure t :if
(configuration-layer/package-usedp 'flycheck)) )
(defun perl6/post-init-flycheck () (spacemacs/add-flycheck-hook 'perl6-mode))
;;; packages.el ends here