どうやってやるの?
さて、前のバージョンは少し簡潔でしたが、あなたが探している答えは、~/.vimrc
ファイルに以下の行を追加することです。これは、vimの起動時に実行するコマンドをセットアップすることをvimに指示しますが、ロードするさまざまなプラグインに依存するため、すべての初期化が完了するまで実行しないでください。以下の行でこれを行います。
autocmd VimEnter * NERDTree
ただし、カーソルが常にNERDTreeウィンドウで開始するという事実に悩まされている場合は、次のように、メインウィンドウにカーソルを移動する2番目のオートコマンドを追加できます。
autocmd VimEnter * NERDTree
autocmd VimEnter * wincmd p
ファイル引数なしでvimを起動したときにのみNERDTreeを表示したいので、これを.vimrcに追加しました。
autocmd VimEnter * if !argc() | NERDTree | endif
WindowsまたはUnix-yシステムを使用していますか?
Unix-yシステムを使用している場合は、プラグインを~/.vim/plugin
に配置します。プラグインディレクトリは次のようになります。
$ ls ~/.vim/plugin
NERD_tree.vim scratch.vim scratchfind.vim
その後すぐに動作し始めます。次のようにvimを実行してみてください。
$ vim .
NERDツリービューで現在のディレクトリを開く必要があります。
Windowsを使用している場合は、プラグインをC:\Program Files\Vim\vim70\plugin
に配置します
Vimの起動時にNERDTreeを自動的にロードするには、コマンドラインから次のように実行します。
$ vim -c "NERDTree" some_file.txt
.bashrc
でこのエイリアスを設定できます:
alias vimt='vim -c "NERDTree" $1'
これで、vimt
の代わりにvim
を実行するたびに、ウィンドウの左側にあるNERDTreeも開きます。
.vimrc
でNERDTreeを起動するショートカットキーをこの方法で追加することもできます。
function OpenNERDTree()
execute ":NERDTree"
endfunction
command -nargs=0 OpenNERDTree :call OpenNERDTree()
nmap <ESC>t :OpenNERDTree<CR>
Esc
を押してからt
を押すと、NERDTreeがポップされます。
https://github.com/scrooloose/nerdtree の指示に従って、pathogen.vimを使用できます( https://github.com/tpope/vim-pathogen )。病原体をインストールする:
mkdir -p ~/.vim/autoload ~/.vim/bundle; \
curl -Sso ~/.vim/autoload/pathogen.vim \
https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
これをvimrcに追加します。
execute pathogen#infect()
次に、NERDTreeをインストールします。
cd ~/.vim/bundle
git clone https://github.com/scrooloose/nerdtree.git
また、vimの起動時にNERDTreeを自動的に開く場合は、vimrcに次を追加します。
autocmd vimenter * NERDTree
" NERD Tree
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN>
ここでの答えには小さな問題があります。
vim --noplugin
を呼び出すか、 vimpager などの--noplugin
モードを使用するスクリプトを使用すると、このエラーが発生します。
Error detected while processing VimEnter Auto commands for "*":
E492: Not an editor command: NERDTree
これを避けるには、代わりにコマンドを~/.vim/after/plugin/NERD_tree.vim
に入れてください:
autocmd VimEnter * NERDTree
また、NERDtree
も利用可能であることをテストすることをお勧めします。つまり:
if exists("loaded_nerd_tree")
autocmd VimEnter * NERDTree
endif