Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

Windows10でvimのNeoBundleを使用する

$
0
0

はじめに

いまさら?と思われるかもしれませんが、Windows10でvimのNeoBundleを使えるように設定した際のメモです。
私のような素人にはややハードルが高かったですが、
使えるようになると便利さが少しずつわかってきますね。

ざっくりと次のような流れです。
1. コマンドプロンプトを使ってvimフォルダの下にNeobundleインストール
2. vimrcを編集してNeobundleを使う

Git for WindowsとkaoriyaVim7.4がインストールされている前提で記載させていただいています。
Gitのインストール方法は次のページに書いてくださっています。
コマンドラインからGitを使う(for Windows)

フォルダの作成とNeobundleのインストール

ネットに投稿されているvim情報はUnix環境が前提とされているものが多く、
Windows環境ではうまくいかないことがありますよね。
(生粋のvimmerはWindowsなど使わんのですかな・・)

例えばNeoBundleのインストール方法をググってみると
次のようにディレクトリを作成されている方が多いです。
~/.vim/bundle
これは「.vim」という名前フォルダを作って
そのさらに下に「bundle」という名前のフォルダを作りましょうという意味です。

ただし、Windows環境では
新規作成→フォルダ→名前変更
としても
.vimという名前をつけることができないと思います。
別名のフォルダを作成してもよいのですが、先人たちと同様に作ったほうが何かと便利です。

Windowsではコマンドプロンプトを立ち上げて、次のように打ち込めばよいです。
ここではvimをインストールしたディレクトリの下にNeobundleをインストールします。

cmd.exeにて
cd C:\Program Files\vim74-kaoriya-win64
mkdir .vim\bundle
git clone https://github.com/Shougo/neobundle.vim .vim/bundle/neobundle.vim

うまくいけば次のように表示されます。
.
image

vimrcの設定

vimrcの設定でも一難あります。
vimrcで、先ほどインストールしたneobundle.vimへのパスを追加するときに、
Windows流儀でフルパスを書いてもうまく通らないことがあります。
「C:」のコロンや「Program Files」の半角スペースが原因と思います。
このときneobundleへのパスが通っていないので、
未知の関数です:neobundle#begin
というエラーが出ます。

そこでパスを正しく通すために
vimrcで設定するneobundle.vimのパスの記述には「$VIM」を用います。
※vimのディレクトリ(C:/Program_Files/vim74-kaoriya-win64 = $VIM)にneobundleをインストールしたので。

次の内容をvimrcに追加することでneobundleが使えるようになります。
Shougo/unite.vimをインストールして用いる例です。

vimrc
filetype plugin indent off
if has('vim_starting')setruntimepath+=$VIM/.vim/bundle/neobundle.vimcall neobundle#begin(expand('$VIM/.vim/bundle/'))
      NeoBundleFetch 'Shougo/neobundle.vim'
      NeoBundle 'Shougo/unite.vim'call neobundle#end()endiffiletype plugin indent on

上記を記述してvimを再起動してShougo/unite.vimのインストールを尋ねられたら成功です。
vimにて
:Unite file
と打つとフォルダの構成が表示されます。便便便利ですね!


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>