summaryrefslogtreecommitdiffstats
path: root/sbcl
diff options
context:
space:
mode:
Diffstat (limited to 'sbcl')
-rw-r--r--sbcl/.gitignore1
-rw-r--r--sbcl/Makefile8
-rw-r--r--sbcl/sbclrc.org36
3 files changed, 45 insertions, 0 deletions
diff --git a/sbcl/.gitignore b/sbcl/.gitignore
new file mode 100644
index 0000000..bb16faa
--- /dev/null
+++ b/sbcl/.gitignore
@@ -0,0 +1 @@
+.sbclrc
diff --git a/sbcl/Makefile b/sbcl/Makefile
new file mode 100644
index 0000000..1be8c1a
--- /dev/null
+++ b/sbcl/Makefile
@@ -0,0 +1,8 @@
+objects=.sbclrc
+
+include ../dotfiles.mk
+
+.sbclrc: sbclrc.org
+ $(EMACS) -Q -batch \
+ -eval "(progn (require 'org) (require 'ob-tangle) \
+ (org-babel-tangle-file \"$^\"))"
diff --git a/sbcl/sbclrc.org b/sbcl/sbclrc.org
new file mode 100644
index 0000000..aaa4ee3
--- /dev/null
+++ b/sbcl/sbclrc.org
@@ -0,0 +1,36 @@
+#+TITLE: SBCL Init
+#+STARTUP: showall
+#+HTML_HEAD: <link href="http://ryuslash.org/bootstrap/css/bootstrap.min.css" type="text/css" rel="stylesheet" />
+#+PROPERTY: tangle .sbclrc
+#+OPTIONS: num:nil
+
+* Install quicklisp
+
+ This bit of code was generated by quicklisp in order to load its
+ initialization file at startup.
+
+ #+BEGIN_SRC lisp :padline no
+ ;;; The following lines added by ql:add-to-init-file:
+ #-quicklisp
+ (let ((quicklisp-init (merge-pathnames "quicklisp/setup.lisp"
+ (user-homedir-pathname))))
+ (when (probe-file quicklisp-init)
+ (load quicklisp-init)))
+ #+END_SRC
+
+* Install linedit
+
+ This Chunk of code installs [[http://common-lisp.net/project/linedit/][Linedit]], a readline-like module for the
+ SBCL REPL. Found thanks to [[http://irreal.org/blog/?p=1913][Irreal]]'s post on the matter. This snippet
+ first checks if it should even be enabled, my [[file:~/projects/dotfiles/emacs/init.org::*Set%20inferior%20lisp%20program%20to%20SBCL][Emacs init file]] file
+ tells SLIME to disable linedit.
+
+ #+BEGIN_SRC lisp
+ (if (member "--no-linedit" sb-ext:*posix-argv* :test 'equal)
+ (setf sb-ext:*posix-argv*
+ (remove "--no-linedit" sb-ext:*posix-argv* :test 'equal))
+ (when (interactive-stream-p *terminal-io*)
+ (require :sb-aclrepl)
+ (require :linedit)
+ (funcall (intern "INSTALL-REPL" :linedit) :wrap-current t)))
+ #+END_SRC