spacemacs/layers/+lang/extra-langs/packages.el
2017-05-18 23:12:56 -04:00

61 lines
1.4 KiB
EmacsLisp

(setq extra-langs-packages
'(
arduino-mode
julia-mode
matlab-mode
qml-mode
scad-mode
stan-mode
sparql-mode
thrift
wolfram-mode
))
(defun extra-langs/init-arduino-mode ()
(use-package arduino-mode
:defer t))
(defun extra-langs/init-julia-mode ()
(use-package julia-mode
:defer t))
(defun extra-langs/init-matlab-mode ()
(use-package matlab-mode
:defer t
:init
;; Explicitly run prog-mode hooks since matlab-mode does not derive from
;; prog-mode major-mode
(add-hook 'matlab-mode-hook 'spacemacs/run-prog-mode-hooks)))
(defun extra-langs/init-qml-mode ()
(use-package qml-mode
:defer t
:mode "\\.qml\\'"))
(defun extra-langs/init-scad-mode ()
(use-package scad-mode
:defer t))
(defun extra-langs/init-stan-mode ()
(use-package stan-mode
:defer t))
(defun extra-langs/init-sparql-mode ()
(use-package sparql-mode
:defer t
:mode "\\.sparql\\'")
(when (configuration-layer/package-usedp 'company)
(spacemacs|add-company-backends :modes sparql-mode)))
(defun extra-langs/init-thrift ()
(use-package thrift
:defer t))
;; .m files are not associated because conflict with more common Objective-C and
;; MATLAB/Octave, manually invoke for .m files.
(defun extra-langs/init-wolfram-mode ()
(use-package wolfram-mode
:defer t
:interpreter "\\(Wolfram\\|Mathematica\\)Script\\( -script\\)?"
:mode "\\.wl\\'"))