目的と方針
これまではサクラエディタとかSublime Textを使ってきたけど、仕事でLinuxをCUIベースで使うことが多くなってきたので、色んな環境で使えるVimに慣れていきたい。
設定ファイルをGitHubで管理して、どこでもgit clone
と少しの手間だけで同じ環境が使えるようになるといいな。
ディレクトリ構成
~/dotfiles
├── .git
├── .gitignore
├── .vim
│ ├── bundle
│ └── userautoload
│ ├── basic.vim
│ └── neobundle.vim
└── .vimrc
- HOME配下にdotfilesディレクトリを作り、そこをGitHubと同期する。
- .vim/bundleは同期しないように.gitignoreに書いておく。
- Vimから見つけられるように、HOME直下にシンボリックリンクを作る。
$ ln -s ~/dotfiles/.vim
$ ln -s ~/dotfiles/.vimrc
.vimrcの分割
.vim/userautoloadに、機能ごとに分割した.vimrcを入れていく。
.vimrc本体にはほとんど設定は書かないようにする。環境依存のところを書くと便利かも?
プラグイン管理
Shougo / neobundle.vim
NeoBundleの導入
vimのプラグイン管理はNeoBundleで行う。
.vim/bundle配下にプラグインを入れる。
他のプラグインはNeoBundleが管理してくれるけど、NeoBundle自身はさすがに無理なのでGitHubからCloneしてくる。
$ mkdir -p ~/.vim/bundle
$ git clone https://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim
neobundle.vimに設定を入れて、.vimrc分割の動作確認も兼ねる。
とりあえず最初に、見た目にも分かりやすいNERD-treeを入れてみる。
NeoBundle使い方メモ
neobundle.vim
if has('vim_starting')
set nocompatible " Be iMproved
" Required:
set runtimepath+=~/.vim/bundle/neobundle.vim/
endif
" Required:
call neobundle#rc(expand('~/.vim/bundle/'))
" Let NeoBundle manage NeoBundle
" Required:
NeoBundleFetch 'Shougo/neobundle.vim'
" My Bundles here:
NeoBundle 'scrooloose/nerdtree'
" Required:
filetype plugin indent on
" If there are uninstalled bundles found on startup,
" this will conveniently prompt you to install them.
NeoBundleCheck
基本的なところはNeoBundleのREADMEに書いてあるものをそのまま利用。
NeoBundle 'プラグインのパス'
インストールするプラグインを列挙
一時的に使わなくなったやつは、行頭に"
つけてコメントアウトしておく。
一番最後のNeoBundleCheck
で、追加したプラグインがあればインストールされる。
プラグインの削除
↑でコメントアウトしたプラグインは無効になるけど、実体のファイルは残ったままになってしまう。
Vim上で:NeoBundleClean
を実行すると完全にアンインストールできる。
プラグインの更新
Vim上で:NeoBundleUpdate
。
NeoBundleの状況確認
Vim上で:NeoBundleList
とか:NeoBundleLog
とか。