Difference between revisions of "Common Lisp Environment Configuration"

From copec
Jump to: navigation, search
Line 1: Line 1:
 +
== Overview ==
 +
Development environment for CL including an IDE (Emacs+SLIME), implementation (SBCL), and library management (Quicklisp+ASDF)
 +
 
* Emacs installed via package manager
 
* Emacs installed via package manager
 
* SBCL installed via package manager
 
* SBCL installed via package manager
* ~/.emacs.d/init.el:
+
* Initial ~/.emacs.d/init.el:
 
<pre>
 
<pre>
 
;; ~/.emacs.d/init.el
 
;; ~/.emacs.d/init.el
Line 13: Line 16:
 
(package-initialize) ;; You might already have this line
 
(package-initialize) ;; You might already have this line
  
 +
</pre>
 +
* Install SLIME <pre>M-x package-install RET slime RET</pre>
 +
* Append ~/.emacs.d/init.el:
 +
<pre>
 
;; Setup load-path, autoloads and your lisp system
 
;; Setup load-path, autoloads and your lisp system
 
;; Not needed if you install SLIME via MELPA
 
;; Not needed if you install SLIME via MELPA
Line 23: Line 30:
 
(setq backup-directory-alist `(("." . "~/.saves")))
 
(setq backup-directory-alist `(("." . "~/.saves")))
 
(setq backup-by-copying t)
 
(setq backup-by-copying t)
 +
 
</pre>
 
</pre>
* ~
 

Revision as of 13:27, 18 August 2016

Overview

Development environment for CL including an IDE (Emacs+SLIME), implementation (SBCL), and library management (Quicklisp+ASDF)

  • Emacs installed via package manager
  • SBCL installed via package manager
  • Initial ~/.emacs.d/init.el:
;; ~/.emacs.d/init.el
(require 'cl)
(require 'package) ;; You might already have this line
(add-to-list 'package-archives
             '("melpa" . "http://melpa.org/packages/") t)
(when (< emacs-major-version 24)
  ;; For important compatibility libraries like cl-lib
  (add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")))
(package-initialize) ;; You might already have this line

  • Install SLIME
    M-x package-install RET slime RET
  • Append ~/.emacs.d/init.el:
;; Setup load-path, autoloads and your lisp system
;; Not needed if you install SLIME via MELPA
;;(add-to-list 'load-path "/usr/share/emacs/site-lisp/slime")
(require 'slime-autoloads)
(setq inferior-lisp-program "/usr/bin/sbcl")

(slime-setup '(slime-fancy slime-xref-browser slime-asdf slime-banner slime-repl slime-indentation slime-fuzzy slime-autodoc slime-presentations slime-presentation-streams))

(setq backup-directory-alist `(("." . "~/.saves")))
(setq backup-by-copying t)