ubuntu 8.10 で emacs が動きません。ので、xemacs を使っています。xemacs の scheme モードのキーが、emacs と違っているのでメモ。 (xemacs 21.4)
(1) run-scheme で gosh の起動
C-u M-x run-schemeとすると、コマンド名を聞かれるので
Run Scheme: gosh -iとします。goshの引数 -i は必要。
(2)schemeモードへ移行
拡張子 .scm のファイルを開くと、勝手に scheme モードになりました。(なにも設定していなくても)
(3) scheme モードのキーバインディング。
オリジナルの解説はここです↓
日本語
http://www.ueda.info.waseda.ac.jp/~ichibe/pub/members.tripod.co.jp/zzyyb/mit/doc-ja/user_7.html
英語
http://www.ps.uni-sb.de/courses/info-i/scheme/doc/user/user_10.html
C-x C-e ← カーソルの前のS式評価 M-o ← 現在のバッファ(全部)の評価
この2つで充分ですが、ついでに上のリンクから他のキーも再掲すると
M-o ← 現バッファの評価(xscheme-send-buffer) M-z ← 現定義を評価(xscheme-send-definition) C-M-x も同じ。 C-M-z ← 現リージョンの評価(xscheme-send-region) C-x C-e ← カーソルの前の式を評価 (xscheme-send-previous-expression) M-RET も同じ。 C-c C-s ← `*scheme*' バッファに移動(xscheme-select-process-buffer) C-c C-y ← 最後の評価式を、現ポイントにヤンク(xscheme-yank-previous-send) `*scheme*' バッファでのみ動作。
なかなか便利です。
割り込みコマンド
C-c C-c ← 中止。Scheme で C-g 入力と同じ(xscheme-send-control-g-interrupt) C-c C-x ← 中止。Scheme でC-c C-x 入力と同じ(xscheme-send-control-x-interrupt) C-c C-u ← 中止。Scheme で C-c C-u 入力と同じ(xscheme-send-control-u-interrupt) C-c C-b ← 中止。Scheme で C-c C-b 入力と同じ(xscheme-send-breakpoint-interrupt) C-c C-p ← 再開。Scheme で (continue) を評価するのと同じ(xscheme-send-proceed)
C-c C-c 以外は、意図不明。MIT-Schemeだと意味があるのかも?