spacemacs/contrib/lang/extra-langs/packages.el
2015-02-15 22:33:41 -05:00

62 lines
1.7 KiB
EmacsLisp

(defvar extra-langs-packages
'(
idris-mode
arduino-mode
scad-mode
qml-mode
julia-mode
nix-mode
racket-mode
yaml-mode
rust-mode
wolfram-mode
))
(defun extra-langs/init-arduino-mode ()
(use-package arduino-mode :defer t))
(defun extra-langs/init-idris-mode ()
(use-package idris-mode :defer t))
(defun extra-langs/init-scad-mode ()
(use-package scad-mode :defer t))
(defun extra-langs/init-nix-mode ()
(use-package nix-mode :defer t))
(defun extra-langs/init-qml-mode ()
(use-package qml-mode :defer t))
(defun extra-langs/init-julia-mode ()
(use-package julia-mode :defer t))
(defun extra-langs/init-yaml-mode ()
(use-package yaml-mode :defer t))
(defun extra-langs/init-rust-mode ()
(use-package rust-mode :defer t))
;; no associated extension because conflicts with more common Objective-C, manually invoke for .m files.
(defun extra-langs/init-wolfram-mode ()
(use-package wolfram-mode
:defer t
:interpreter "\\(Wolfram\\|Mathematica\\)Script\\( -script\\)?"))
(defun extra-langs/init-racket-mode ()
(use-package racket-mode
:defer t
:config
(progn
(use-package smartparens :config
(progn (add-to-list 'sp--lisp-modes 'racket-mode)
(when (fboundp 'sp-local-pair) (sp-local-pair 'racket-mode "`" nil :actions nil))))
(sp-local-pair 'racket-mode "'" nil :actions nil)
(evil-leader/set-key-for-mode 'racket-mode
"ml" 'evil-lisp-state
"mt" 'racket-test
"mg" 'racket-visit-definition
"mhd" 'racket-doc)
(add-hook 'racket-mode-hook
'(lambda ()
(define-key racket-mode-map (kbd "H-r") 'racket-run))))))