そろそろしっかりvimを使う。github+vundleを利用したWindowsとの同期。
しっかりvim、2回目。
前回はMacでdotfiles(.vimrcなど)をgithubの管理にし、vimのpluginをvundleで管理するようにした。
そろそろしっかりvimを使う。dotfilesのgithub管理とvundleの導入。 - holyppの日記
今回はWindowsで、前回作った設定ファイルをgithubから持ってくる。
それにより、WindowsでもMacと同じ設定で使えるようになる。
Windowsからgit pushもできるので、同期すると言ったほうが良いかも知れない。
gitが入っていない状態から始めても、慣れれば30分以内に作業が終わるので、興味のある方は是非やってみて欲しい。
github+vundleで、複数PCでの管理が驚くほど楽になる。
目次
・gitとcurlの導入
・git cloneとsubmodule update
・リンクの作成
・BundleInstall
gitとcurlの導入
vundleを使うのにはgitとcurlが必要になる。
Windowsではmsysgitをインストールし、curl.cmdを作成する。
本家のVundle for Windows · gmarik/vundle Wiki · GitHubが詳しい。
msysgitはここからダウンロードする。
http://code.google.com/p/msysgit/downloads/list
現時点の最新版はGit-1.7.4-preview20110204.exe
ダウンロード後にexeを実行し、全てNextで進むだけでインストールは終わる。
次にC:\Program Files\Git\cmdに、curl.cmdを作成する。内容は以下の通り。
@rem Do not use "echo off" to not affect any child calls. @setlocal @rem Get the abolute path to the parent directory, which is assumed to be the @rem Git installation root. @for /F "delims=" %%I in ("%~dp0..") do @set git_install_root=%%~fI @set PATH=%git_install_root%\bin;%git_install_root%\mingw\bin;%PATH% @if not exist "%HOME%" @set HOME=%HOMEDRIVE%%HOMEPATH% @if not exist "%HOME%" @set HOME=%USERPROFILE% @curl.exe %*
なお、環境変数PATHを「C:\Program Files\Git\cmd」に通すのも忘れずに。
これで準備ができた。
git cloneとsubmodule update
早速、githubからファイルを持ってこよう。
git clone http://github.com/holypp/dotfiles.git ~/dotfiles
次に、~/dotfiles/vimfiles/vundle.git/について、submoduleのinitとupdateを行う。
(この時点ではvundle.gitの中には何も無い。)
cd ~/dotfiles git submodule init git submodule update
これでvundleの配置が完了した。
リンクの作成
次はそれぞれのシンボリックリンク(またはハードリンク)を作成する。
Windows7(またはvista)の場合
シンボリックリンクを作成する。
コマンドプロンプトを右クリックで「管理者として実行」し、mklinkコマンドを使う。
ログも込みで以下の通り。
mklink C:\Users\xxxxx\_vimrc C:\Users\xxxxx\dotfiles\_vimrc C:\Users\xxxxx\_vimrc <<===>> C:\Users\xxxxx\dotfiles\_vimrc のシンボリックリンクが作成されました mklink C:\Users\xxxxx\_gvimrc C:\Users\xxxxx\dotfiles\_gvimrc C:\Users\xxxxx\_gvimrc <<===>> C:\Users\xxxxx\dotfiles\_gvimrc のシンボリックリンクが作成されました mklink /d C:\Users\xxxxx\vimfiles C:\Users\xxxxx\dotfiles\vimfiles C:\Users\xxxxx\vimfiles <<===>> C:\Users\xxxxx\dotfiles\vimfiles のシンボリックリンクが作成されました
WindowsXPの場合
今更XPという感じもあるが、私は使わなければならない環境に居るので書いておく。
XPではシンボリックリンクが使えないので、ハードリンクを使う。動作は問題無い。
(シンボリックリンクが使えるというツールもいろいろ試したが、結果的にハードリンクの方が良いと判断した。)
ファイルにはfsutilコマンド、フォルダにはlinkdコマンドを使う。
linkdコマンドは「Windows Server 2003 Resource Kit Tools」が必要なので、こちらからダウンロードしてインストールする。
Download details: Windows Server 2003 Resource Kit Tools
あとは以下の通り。
fsutil hardlink create "C:\Documents and Setting s\xxxxx\_vimrc" "C:\Documents and Settings\xxxxx\dotfiles\_vimrc" C:\Documents and Settings\xxxxx\_vimrc <<===>> C:\Documents and Settings\xxxxx\d otfiles\_vimrc のハードリンクが作成されました fsutil hardlink create "C:\Documents and Setting s\xxxxx\_gvimrc" "C:\Documents and Settings\xxxxx\dotfiles\_gvimrc" C:\Documents and Settings\xxxxx\_gvimrc <<===>> C:\Documents and Settings\xxxxx\ dotfiles\_gvimrc のハードリンクが作成されました linkd "C:\Documents and Settings\xxxxx\vimfiles" "C:\Documents and Settings\xxxxx\dotfiles\vimfiles" Link created at: C:\Documents and Settings\xxxxx\vimfiles
BundleInstall
最後に、vimを起動し「:BundleInstall」を行う。
しかしその前に.vimrcのvundleの設定箇所に少し工夫が必要。
set nocompatible filetype off "このif文が必要。 if has("win32") || has("win64") set rtp+=~/vimfiles/vundle.git/ call vundle#rc('~/vimfiles/bundle/') else set rtp+=~/.vim/vundle.git/ call vundle#rc() endif Bundle 'Shougo/neocomplcache' Bundle 'Shougo/unite.vim' Bundle 'thinca/vim-ref' Bundle 'thinca/vim-quickrun' filetype plugin indent on
vundle#rcは引数無しの場合に~/.vim/bundleへ、引数があればそこへpluginを格納する。
これで、Windowsの場合のみ~(/dotfiles)/vimfiles/bundleという構成になる。
これで今回は終わり。
gitのダウンロードからここまでで、30分掛からないくらい。
何度も行ったので、github,vundleにはずいぶん慣れてきた。
vimの各種プラグインの設定については、また別途書こうと思う。(まだ続きそう。)