;;; lisp-mode-settings.el --- Settings for lisp modes. ;; Slime - requires SBCL to be installed in /usr/local/bin/ (default for the install.sh ;; script) (setq inferior-lisp-program "sbcl") (setq slime-contribs '(slime-fancy)) ;; Enable paredit for lisp (autoload 'enable-paredit-mode "paredit" "Turn on pseudo-structural editing of Lisp code." t) (add-hook 'emacs-lisp-mode-hook #'enable-paredit-mode) (add-hook 'eval-expression-minibuffer-setup-hook #'enable-paredit-mode) (add-hook 'ielm-mode-hook #'enable-paredit-mode) (add-hook 'lisp-mode-hook #'enable-paredit-mode) (add-hook 'lisp-interaction-mode-hook #'enable-paredit-mode) (add-hook 'scheme-mode-hook #'enable-paredit-mode) (require 'rainbow-delimiters) (add-hook 'clojure-mode-hook 'rainbow-delimiters-mode) (add-hook 'lisp-mode-hook 'rainbow-delimiters-mode) (add-hook 'scheme-mode-hook 'rainbow-delimiters-mode) (add-hook 'emacs-lisp-mode-hook 'rainbow-delimiters-mode) ;; Only enable aggressive indent on lisp-likes (add-hook 'emacs-lisp-mode-hook #'aggressive-indent-mode) (add-hook 'lisp-mode-hook #'aggressive-indent-mode) (add-hook 'scheme-mode-hook #'aggressive-indent-mode) (add-hook 'clojure-mode-hook #'aggressive-indent-mode) ;; Autoload the indent function (autoload 'common-lisp-indent-function "cl-indent" "Common Lisp indent.") ;;-------------------------------------------------------------------------------------- ;; SLIME Quicklisp Integration ;;-------------------------------------------------------------------------------------- (when (file-exists-p "~/quicklisp/slime-helper.el") (load (expand-file-name "~/quicklisp/slime-helper.el")) (setq inferior-lisp-program "sbcl"))