;;; lisp-custom.el --- Customisations for working with lisp -*- lexical-binding: t -*- ;; This file is not part of GNU Emacs ;; This program is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see . ;;; Commentary: ;; commentary ;;; Code: ;; Paredit my beloved (use-package paredit :hook ((emacs-lisp-mode . enable-paredit-mode) (eval-expression-minibuffer-setup . enable-paredit-mode) (lisp-mode . enable-paredit-mode) (lisp-interaction-mode . enable-paredit-mode) (scheme-mode . enable-paredit-mode)) :config (add-hook 'ielm-mode-hook (lambda () (enable-paredit-mode) ;; This fixes newline behavior in IELM, but breaks it everywhere else, hence it's wrapped here (define-key paredit-mode-map (kbd "RET") nil) (define-key paredit-mode-map (kbd "C-j") 'paredit-newline)))) ;; SICP my beloved (use-package sicp :ensure t) (provide 'lisp-custom) ;;; lisp-custom.el ends here