Macのvim開発環境をナウでヤングな感じにした
仕事で自分でコーディングすることはもう皆無なので、今さら覚える必要はないかもしれないのですが、最近のナウでヤングなVimmerの開発環境を見てたら、何か自分も時代についていきたい感じがしたので、最近のトレンドに合わせて開発環境を新しくしてみました。
MacPortsからHomebrewへの移行
依存するソフトウェアを必ず/opt/localにインストールするMacPortsと比べて、Homebrewは依存するソフトウェアがOS Xにあればそちらを利用するので、利用するディスク容量が圧倒的に少なくなります。自分の場合は、移行後にディスクの空き容量が4GBくらい増えました。
ただし、その仕様によるデメリットとして、OSをアップグレードした場合に依存関係にあるソフトウェアが機能しなくなる可能性があります。とは言っても、そういうケースは稀でそれはそれで何らかの方法で個別に対処すればいいので、MacPortsをやめてHomebrewに移行することにしました。
MacPortsの削除
$ sudo port deactivate active
$ sudo port -uf uninstall
$ sudo port clean all
$ sudo rm -rf /opt/local
Homebrewの導入
$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
$ brew install git
$ brew update
あとは、
$ brew install wget
のように好きなパッケージを導入します。
dotfilesをGitHubで管理
.vimrcや.zshrcなどのいわゆるdotfilesをGitHubで管理するのが何だかトレンドらしいです。たしかにクラウド上にバックアップしておけるってのと、他の端末で簡単に利用できるのは便利です。
自分のようにGitHubを使ったことがない人は、まずGitHubを利用するための設定からスタートになります。GitHubでアカウントを作成した後、下記ページのとおりSSH Keyの設定などを行ってください。
Set up Git
http://help.github.com/mac-set-up-git/
上記の設定が終わったら、GitHubにリポジトリ「.dotfiles」を作成します。
dotfilesの移動とシンボリックリンク作成
$ cd
$ mkdir .dotfiles
$ mv .vimrc .dotfiles/.vimrc
$ mv .zshrc .dotfiles/.zshrc
$ ln -s .dotfiles/.vimrc .vimrc
$ ln -s .dotfiles/.zshrc .zshrc
ローカルリポジトリの作成とGitHubへのpush
$ cd .dotfiles
$ touch README
$ git init
$ git add -A
$ git commit -m 'first commit'
$ git remote add origin [email protected]:USER ACCOUNT/.dotfiles.git
$ git push -u origin master
以上でdotfilesをGitHubに登録できます。
vimプラグインの管理をneobundle.vimに
最初はVunbleを使おうと思ったのですが、shellslashで死ねるとか色々と面倒らしいので、neocomplcacheやunite.vimの作者のShougoさんが作ったneobundle.vimの方を使うことにしました。
neobundle.vim
https://github.com/Shougo/neobundle.vim
neobundle.vimの導入
$ mkdir -p ~/.vim/bundle
$ git clone git://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim
.vimrcへの設定
導入したいプラグインを NeoBundle 'plugin' で指定します。
--
set nocompatible
if has('vim_starting')
set runtimepath+=~/.vim/bundle/neobundle.vim/
endif
call neobundle#rc()
NeoBundleFetch 'Shougo/neobundle.vim'
NeoBundle 'Shougo/neocomplcache'
NeoBundle 'Shougo/neosnippet'
NeoBundle 'Shougo/unite.vim'
NeoBundle 'honza/vim-snippets'
NeoBundle 'tpope/vim-surround'
NeoBundle 'tpope/vim-repeat'
NeoBundle 'scrooloose/syntastic'
NeoBundle 'othree/html5.vim'
NeoBundle 'mattn/zencoding-vim'
"}}}
filetype plugin indent on
syntax enable
NeoBundleCheck
--
プラグインのインストール
vimで以下のコマンドを実行します。
:NeoBundleInstall
プラグインのアップデート
vimで以下のコマンドを実行します。
:NeoBundleInstall!
プラグインのアンインストール
.vimrcでのプラグイン指定を削除した後、vimで以下のコマンドを実行します。
:NeoBundleClean
補完をneocomplcacheへ
これまで補完には、AutoComplPop+snipMateを使っていましたが、より強力なneocomplcacheに替えました。
unite.vimの導入
あと、何だかすごい便利らしいunite.vimも入れてみました。ただ、neobundle.vimで入れただけで、まだまったく触ってないです。どこかで時間作って覚えようかと思います。