Outdated! OS X LionのMacVim(32bit)にneobundle入れてcclインストールしてslimvが使えるようになるまで
(2012.05.16)
This article is old!
If you want to use slimv 64bit in OS X Lion, Here!!
書き直してかなりミスがあったので、32bit以前の問題としてオススメしません。
■MacVimにslimvが入らない? --> 入りました
みんなが御用達stackoverflow.comのslimv segfaulting on OS X Lionで、slimvを作った人(Tamas Kovacs)が書いているのですが、MacVimの64bit版は、現時点では使えないようです。なのでMacVimの32bit版をインストールしてslimvが使えるまで、です。前の記事を書いた時点でこのことは知っていて、64bit… え… になったため、Linux Mintをネタにしましたが、やはりMacでも…というわけで32bit版です。
(2012.05.15追記)
現在、homebrewのMacVimの64bitではslimvが使えないようです。
Download MacVim 7.3 (snapshot 64) for Mac OS X Lion. (Released Jan 2, 2012.)
だとslimvが使えるようです。
■環境
- OS: OS X Lion 10.7.3
- Vim: MacVim 7.3
- Common Lisp: Clozure Common Lisp 1.7 --> 1.8
- Xcode 4.3.2
- homebrew 0.9
- slimv 0.96(2012 3/31に新しいのがきました)
■Map
大雑把な図にするとこんな感じ。なので、必要なものをいれて設定していきます。
■Clozure Common Lisp
homebrewを使います。まだ入れてない方は、Macのパッケージ管理をMacPortsからhomebrewへのような親切なサイトを参考にしてください。入れ終わったら、
brew install ccl
これで終了。簡単ですね。
Linux版は現在1.8ですが、brewの中のcclは1.7のようです( --> 1.8がきました)。
ついでにgitも必要なため、
brew install git
もしてください。
■MacVim
今回、32bitでmakeするためXcodeが必要です。OS X LionだとApp Storeからダウンロードできます。10.7からXcodeのパスが異なるため、あらかじめ魔法の言葉
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
をターミナルで唱えておきます(Beginning OS X Lion/インフラ整備編)。XcodeがついにApplicationsに入ったためのようです。
今回は手動でmacvimフォルダをダウンロードして32bitでコンパイルします。詳しくは、ここに書かれています。
git clone git://github.com/b4winckler/macvim.git
cd macvim/src
macvim/srcに移動./configure --with-features=huge --enable-rubyinterp --enable-pythoninterp --enable-perlinterp --enable-cscope --with-macarchs=i386
--enable-pythoninterp(swankで使う)と--with-macarchs=i386(32bitに指定)は必ず必要make
macvim/srcのディレクトリでmake
すると、macvim/src/MacVim/build/Release/MacVim.appが出来ます。これが成果物です。起動して左上のリンゴの隣にあるMacVimからAbout MacVimをみても64bitと書かれていますが大丈夫です。このMacVim.appをアプリケーションに移動したりして使いましょう。MacVimの64bitが既にある人もいると思いますが、私はbrew install macvimしたのでアプリケーション(/Applications/MacVim.app)に入れても困らないため、アプリケーションに入れたという前提で話を進めたいと思います。
Vim上でPythonが使用できるようになっているかどうかは、":echo has('python')"で確認することが出来ます
■quicklisp
http://beta.quicklisp.org/quicklisp.lispをダウンロードする
quicklisp.lispは、Homeにおいておく
ccl
- (load "quicklisp.lisp")
- (quicklisp-quickstart:install :path ".quicklisp/")
- (ql:add-to-init-file)
- (ql:quickload :swank)
■vimプラグイン
GitHubにあるShougoさんのneobundleをインストールしてセットアップします。gitを使うのでインストールしていない場合は、sudo brew install gitでインストールします。
mkdir -p ~/.vim/bundle
git clone https://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim
git clone https://github.com/vim-scripts/slimv.vim ~/.vim/bundle/slimv
フォルダ名の.vimの有無は、gitのプロジェクト名の.vimの有無
slimv.vimのフォルダ名をslimv.vimにすると、.vimrcの設定がうまくいかないためフォルダ名はslimvにしました。
gvim ~/.vimrc
set nocompatible " be iMproved
filetype plugin indent off " required!
if has('vim_starting')
set runtimepath+=~/.vim/bundle/neobundle.vim
call neobundle#rc(expand('~/.vim/bundle/'))
endif
" originalrepos on github
NeoBundle 'Shougo/neobundle.vim'
NeoBundle 'vim-scripts/slimv'
filetype plugin indent on " required!
filetype indent on
let g:vimshell_editor_command = '/Applications/MacVim.app/Contents/MacOS/Vim --servername=VIM --remote-tab-wait-silent'
let g:slimv_lisp = '/usr/local/bin/ccl'
let g:slimv_impl = 'clozure'
let g:slimv_preferred = 'clozure'
let g:slimv_swank_cmd = '!osascript -e "tell application \"Terminal\" to do script \"ccl --load ~/.vim/bundle/slimv/slime/start-swank.lisp\""'
cclがどこにあるか分からない場合は、
which ccl
とすると場所が分かります。
足りないものもあるかと思いますが、これでとりあえず起動出来ます。
これで準備が整いました。
ノーマルモード(esc or Ctrl-[ )で、
初めてのものがある場合は、
:NeoBundleInstall!
アップデートする場合は、
:NeoBundleInstall
無事読み込まれたか確認してみましょう。
MacVim.appを起動後、":e test.lisp"とタイプしたところです。syntaxとbufferの間にslimvが表示されていることを確認してください。ファイルの拡張子によって表示が制御されているため早とちりをしないようにしてください。
■参考