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

ABCL(Armed Bear Common Lisp)で日本語を使うためのメモ。
(UTF-8限定)

ABCLのコンパイル

Readerが使っているストリームをUTF-8対応にする。

  • src/org/armedbear/lisp/Stream.java文字コード(InputStreamReaderをnewしている部分)をUTF-8に書き換える。(2箇所)
  • 普通にコンパイルしてJARファイルを作る。

SLIMEの設定

ABCL用のファイルの中で、utf-8-unixを通すようにする。

  • swank-abcl.lispの最後に、下記のコードを追加する。
(defimplementation find-external-format (coding-system)
  (if (equal coding-system "utf-8-unix")
    :default
    nil))
  • .emacsに下記の設定を追加する。
(setq slime-net-coding-system 'utf-8-unix)