[Common Lisp]LispBoxで日本語を使う方法

Common Lispの開発環境LispBox
http://gigamonkeys.com/lispbox/

Ubuntu上ではSBCLやSLIMEがパッケージになっているのでそれが一番手軽だ。
Windows上ではACL版のLispBoxを使うのが手軽なんだけど、デフォルトでは日本語が通らない。

しかし、下記の2箇所を編集すれば簡単に日本語が通るようになる。

C:\Program Files\LispBox-0.7\lispbox.el

; This code is used to start the Lisp in a box Lisp
(defvar fi::*lispbox-root* "C:/Program Files/LispBox-0.7/")
(push (format "%sslime-2.0/" fi::*lispbox-root*) load-path)
(require 'slime)
(setq slime-net-coding-system 'utf-8-unix) ;この行を追加
(slime-setup)
(setq slime-multiprocessing t)
(...

C:\Program Files\LispBox-0.7\slime-2.0\swank.lisp

...
;(defvar *coding-system* ':iso-latin-1-unix)  ;この行をコメントアウトして
(defvar *coding-system* ':utf-8-unix)         ;直下にこの行を追加
...

これで日本語が使える。SLIMEとLisp処理系の間の通信だけUTF-8にしており、ファイルの編集自体はSHIFT-JISのままになる。


おまけ

最終行に下記の行を追加して、C:\common-lisp-libs/acl/以下にダウンロードしたライブラリなどを適当に展開して突っ込んでおけば、asdfで自動的にロードできるようになる。

Windows上だったら、ASDF-INSTALLを一生懸命設定するよりも、この方法が手っ取り早いかも。っ実は、ASDF-INSTALLをWindows上でちゃんと設定するやり方がわからんかっただけなんですが(^^;

C:\Program Files\LispBox-0.7\slime-2.0\site-init.lisp

...
(register-source-directory (lispbox-file (make-pathname :directory '(:relative "practicals-1.0.3"))))
(register-source-directory #P"C:/common-lisp-libs/acl") ;最終行にこれを追加