ツテなしフリーランス日誌

ツテが全く無いまま会社を辞め、我が道を行くフリーランスエンジニアのブログです



vimrcをgithub管理して、簡単にvim環境構築

vimを使用している人なら必ずカスタマイズしているdotfiles(.vimrcなど)

このdotfilesをGithub上で管理することによって、新しいPCやサーバーへ自分のvim環境を簡単に構築することが出来るようになります。
  
また、vimのplugin管理にはNeoBundleを使用しているので、NeoBundleの設定も合わせて、 書きたいと思います。  

  

  1. _vimrcの作成とシンボリックリンク
  2. NeoBundleをサブモジュールとして追加
  3. NeoBundleの設定
         

1. _vimrcの作成とシンボリックリンク

ターミナルを起動し、ホームへ移動します。そして、ディレクトリを作ります。 ここで作るディレクトリ名は何でも構いませんが、通例に従ってdotfilesとしておきます。

cd ~
mkdir dotfiles

  

次に、dotfilesに移動し、_vimrcを作成します。これは、.vimrcのシンボリックリンク元として扱うために作ります。

cd dotfiles
touch _vimrc
ln -s ~/dotfiles/_vimrc ~/.vimrc

  

これで、_vimrcを編集していけばvimの設定が変わるようになりました。

次に、このdotfilesフォルダをgithubで管理します。(先にGithubでdotfilesのリポジトリを作成しておいて下さい)

cd ~/dotfiles
git init
touch README.md
git add -A
git commit -m "first commit"
git remote add origin [作成したGithubのリポジトリのパスを指定して下さい]
git push -u origin master

  

2. NeoBundleをサブモジュールとして追加

続いて、NeoBundleを導入します。

NeoBundleをそれぞれの環境毎にcloneして来ても良いのですが、今回はgitのsubmoduleとして管理したいと思います。
これをすれば、新しい環境では、シンボリックリンクを貼ればいいだけになるので。

# submoduleへ追加
git submodule add git://github.com/Shougo/neobundle.vim ~/dotfiles/.vim/bundle/neobundle.vim
git commit -m "add neobundle submodule"
git push origin master

# submoduleを取得します。
git submodule update --init

# シンボリックリンクの作成
mkdir -p ~/.vim/bundle
ln -s ~/dotfiles/.vim/bundle/neobundle.vim ~/.vim/bundle/neobundle.vim

  

3. NeoBundleの設定

続いて、NeoBundleを使用するために_vimrcに書きを追記します。

" 一旦ファイルタイプ関連を無効化
filetype off

if has('vim_starting')
  " 初回起動時のみruntimepathにneobundleのパスを指定する
  set runtimepath+=~/.vim/bundle/neobundle.vim/
endif

call neobundle#begin(expand('~/.vim/bundle'))
NeoBundle 'Shougo/neobundle.vim'

" NeoBundleを初期化
call neobundle#begin(expand('~/.vim/bundle/'))

" インストールするプラグインをここに記述
NeoBundle 'Shougo/unite.vim'
NeoBundle 'Shougo/vimfiler'
NeoBundle 'Shougo/vimproc.vim', {
\ 'build' : {
\     'windows' : 'tools\\update-dll-mingw',
\     'cygwin' : 'make -f make_cygwin.mak',
\     'mac' : 'make -f make_mac.mak',
\     'linux' : 'make',
\     'unix' : 'gmake',
\    },
\ }

call neobundle#end()

" ファイルタイプ別のプラグイン/インデントを有効にする
filetype plugin indent on

  

vimを起動し、次のコマンドをvimで打ち込みプラグインをインストールして下さい。

:NeoBundleInstall

これで、NeoBundleを使用してプラグインの管理と利用ができるようになりました。
  

vimには様々なプラグインがあり、また自分独自の設定をすることで、より使いやすいものとなります。
私のdotfilesを載せておきますので、ご参考までに。

dotfiles
  

実際に、新しい環境でvimを設定する

作成したdotfilesを対象のホームディレクトリにcloneし、シンボリックリンクを貼ります。

git clone [リポジトリのパス]
ln -s ~/dotfiles/_vimrc ~/.vimrc
mkdir -p ~/.vim/bundle
ln -s ~/dotfiles/.vim/bundle/neobundle.vim ~/.vim/bundle/neobundle.vim

# submoduleを取得していない場合は、初期化し取得します。
git submodule update --init

  

そして、vimを開き、

:NeoBundleInstall

を実行して、環境を設定しましょう。