vimでschemeモードっぽく

emacsだとschemeを編集している時はschemeモードとなって、カーソル直前のS式を実行させて結果を表示することができます。
まぁvimでやるんだったら普通にquickrun使えば同じようなことできるし特に困ってませんがそれでもemacs使いの人に面と向って自慢されたらvimでもやるしかないですね!


やり方
(1)vimshellをインストール
(2)以下の記述を.vimrcに書く*1


autocmd MyAutoCmd FileType scheme 
    \ nmap <Space>z "zya(<C-w>j:call<space>append(line('$'),getreg("z"))<Cr>G<CR><C-w>p


修正版

autocmd FileType scheme 
    \ nmap <buffer> <Space>z "zya(:exe<space>"VimShellSendString ".getreg("z")<CR>

(3)vimの画面を上下に2分割として、上にschemeバッファ、下に :VimShellInteractive gosh とかしてschemeインタプリタを起動する
(4)schemeバッファ上で実行したいS式の括弧で<Space>z



http://gyazo.com/bb3f3f113b3fb4e1cbab75a8c6b81300.png

*1:vimshellバッファにおいて<CR>はまた別のものにマッピングされているのでnmapを使う必要があります