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/contrib/trishume/packages.el
2014-11-19 20:34:23 -05:00

128 lines
3.5 KiB
EmacsLisp

(defvar trishume-packages
'(
auctex
idris-mode
arduino-mode
scad-mode
qml-mode
julia-mode
helm-ag
lua-mode
racket-mode
go-mode
yaml-mode
ag
aggressive-indent
hungry-delete
))
(when (member 'trishume dotspacemacs-configuration-layers)
(add-to-list 'trishume-packages 'company-auctex))
(defun trishume/init-auctex ()
(defun load-auctex-on-demand ()
(interactive)
(use-package tex
:config
(progn
(use-package smartparens
:config (require 'smartparens-latex))
(when (member 'company-mode dotspacemacs-configuration-layers)
(use-package company-auctex
:init (company-auctex-init)))
(defun build-view ()
(interactive)
(if (buffer-modified-p)
(progn
(let ((TeX-save-query nil))
(TeX-save-document (TeX-master-file)))
(setq build-proc (TeX-command "LaTeX" 'TeX-master-file -1))
(set-process-sentinel build-proc 'build-sentinel))
(TeX-view)))
(defun build-sentinel (process event)
(if (string= event "finished\n")
(TeX-view)
(message "Errors! Check with C-`")))
(add-hook 'LaTeX-mode-hook '(lambda () (local-set-key (kbd "H-r") 'build-view)))
(add-hook 'LaTeX-mode-hook 'flyspell-mode)
(add-hook 'LaTeX-mode-hook 'LaTeX-math-mode)
(add-hook 'LaTeX-mode-hook 'spacemacs/load-yasnippet)
(evil-leader/set-key
"oe" 'LaTeX-environment
"oc" 'LaTeX-close-environment)
(setq-default TeX-auto-save t)
(setq-default TeX-parse-self t)
(setq-default TeX-master nil)
(setq-default TeX-PDF-mode t))))
(evil-leader/set-key
"el" 'load-auctex-on-demand))
(defun trishume/init-arduino-mode ()
(use-package arduino-mode :defer t))
(defun trishume/init-idris-mode ()
(use-package idris-mode :defer t))
(defun trishume/init-scad-mode ()
(use-package scad-mode :defer t))
(defun trishume/init-qml-mode ()
(use-package qml-mode :defer t))
(defun trishume/init-julia-mode ()
(use-package julia-mode :defer t))
(defun trishume/init-helm-ag ()
(use-package helm-ag
:init
(progn
(defun trishume-helm-ag ()
(interactive)
(helm-ag (projectile-project-root)))
(evil-leader/set-key
"oa" 'trishume-helm-ag))))
(defun trishume/init-lua-mode ()
(use-package lua-mode
:defer t))
(defun trishume/init-go-mode ()
(use-package go-mode
:defer t))
(defun trishume/init-yaml-mode ()
(use-package yaml-mode
:defer t))
(defun trishume/init-racket-mode ()
(use-package racket-mode
:defer t
:config
(add-hook 'racket-mode-hook
'(lambda ()
(define-key racket-mode-map (kbd "H-r") 'racket-run)))))
(defun trishume/init-aggressive-indent ()
(use-package aggressive-indent
:defer t
:init
(add-to-hooks #'aggressive-indent-mode '(emacs-lisp-mode-hook
racket-mode-hook
css-mode-hook))
:config
(spacemacs//hide-lighter aggressive-indent-mode)))
(defun trishume/init-hungry-delete ()
(use-package hungry-delete
:init (global-hungry-delete-mode)
:config
(progn
(setq-default hungry-delete-chars-to-skip " \t\f\v") ; only horizontal whitespace
(define-key hungry-delete-mode-map (kbd "DEL") 'hungry-delete-backward)
(define-key hungry-delete-mode-map (kbd "S-DEL") 'delete-backward-char))))