emacs と clisp のインストール
とりあえずclispで
$ sudo apt-get install clisp emacs
quicklisp のインストール
$ cd ~/
$ wget http://beta.quicklisp.org/quicklisp.lisp
$ clisp
CL-USER> (load "quicklisp.lisp")
CL-USER> (quicklisp-quickstart:install :path ".quicklisp/")
CL-USER> (ql:add-to-init-file)
CL-USER> (exit)
quicklisp からslimeをインストール
slimeとは emacs + common lisp な IDE
$ clisp
CL-USER> (ql:quickload :quicklisp-slime-helper)
To load "quicklisp-slime-helper":
Load 1 ASDF system:
quicklisp-slime-helper
; Loading "quicklisp-slime-helper"
.
slime-helper.el installed in "/Users/**/**/slime-helper.el"
To use, add this to your ~/.emacs:
(load (expand-file-name "~/.quicklisp/slime-helper.el"))
;; Replace "sbcl" with the path to your implementation
(setq inferior-lisp-program "sbcl")
CL-USER> (exit)
Emacs22 からは ~/.emacs
ではなく ~/.emacs/init.el
に書くべし
$ touch ~/.emacs.d/init.el
$ vim ~/.emacs.d/init.el
(load (expand-file-name "~/.quicklisp/slime-helper.el"))
(setq inferior-lisp-program "clisp")
;; ccl sbcl clisp など
;; SLIMEのロード
(require 'slime)
(slime-setup '(slime-repl slime-fancy slime-banner slime-indentation))
;; SLIMEからの入力をUTF-8に設定
(setq slime-net-coding-system 'utf-8-unix)
emacs+slimeでよくつかうコマンド
などを参照
-
M-x slime
: slimeを起動 -
C-c C-]
: 開いてる括弧をそこで全て閉じる括弧を追加する -
C-c C-c
: カーソル位置のフォームを一番外からコンパイルしてロード -
C-c C-k
: ファイル全体をコンパイルしてロード -
C-c C-z
: REPLを表示・移動 -
M-p
: REPLの入力履歴を前へ -
M-n
: REPLの入力履歴を次へ -
C-x o
: 分割画面での移動 -
C-x C-b
: バッファ一覧表示 -
C-x b [buffer]
: 画面バッファの変更 -
C-x 2
: 表示するバッファを上下に分割 -
C-x 3
: 表示するバッファを左右に分割 -
C-x 1
: 表示するバッファを選択画面のみにする -
C-x 0
: 選択画面を消す -
C-l
: 画面再描画 -
C-x k
: 現在のバッファを閉じる -
C-x f [ファイル名]
: ファイルを開く -
C-x C-s
: ファイル保存 -
C-_
: 元に戻す -
C-/
: やり直し -
C-@
: 選択 -
M-w
: コピー -
C-w
: 切り取り -
C-y
: 貼り付け -
C-c
: 困ったら連打 - なんか間違ったキーバインド入力してよくわからんくなったら
C-g
を連打する
コミュニティ・情報源
- ja.stackoverflow common-lisp
- reddit lisp_ja
- Common Lisp: loopマクロ用法抄
- Common Lisp の解説と小品
- Cより高速なCommon Lispコードを書く
- #:g1: frontpage
- 逆引きCommon Lisp
- qiita common-lisp
- Lisp の型システム
- lisphub
- shibuya.lisp
- 2016年のCommon Lispはこれだ!
- Common Lisp のリファレンスを使う HyperSpecインストール
- xyzzy Lisp Programming
- Rosetta Code Category:Common_Lisp
- Google Common Lisp スタイルガイド 日本語訳
- Alexandria Manual - draft version
- SLIME User Manual Key-Index
- format関数