2009-09-19 10 views
106

どうやってやるの?あなたのvimrcにNERDTreeをどのように追加しますか?

+0

私は私の答えを更新しました。 .vimrcに追加してあなたが望むことをすることができるかどうかは確かではありませんが、コマンドラインからvimを実行してNERDTreeを自動的に開くことができます。見てください:) –

+0

あなたは以下の答えです。 –

+0

NERDTreeは、Visual Studioの世界の期待を満たしていないデフォルトを持っています。何も期待どおりに動作しません。 DIY製品、OSSの大部分として。 NERDTreeのために$ 500を費やしました.vimrc:https://gist.github.com/avesus/1954d9384d86cc1e39cb2b2eff7017b7 –

答えて

190

これまでのバージョンはやや簡潔でしたが、お探しの答えは、下記の行を~/.vimrcファイルに追加することです。 vimが起動するときに実行するコマンドを設定することをvimに伝えますが、ロードされるさまざまなプラグインに依存するため、すべての初期化が完了するまで実行したくありません。下の行がこれを行います。

autocmd VimEnter * NERDTree 

、しかし、あなたはカーソルが常にNERDTreeウィンドウで起動しているという事実に悩まさしている場合、あなたは、メインウィンドウにカーソルを移動するので、好きになる第二自動コマンドを追加することができます

autocmd VimEnter * NERDTree 
autocmd VimEnter * wincmd p 
+0

なぜか分かりませんが、これは私にとってはうまくいきません。私は電話しなければならない:とにかくnerdtreeを表示するにはvimの中でNERDTreeToggle – hgf

+0

私のために働いた。 ubuntu 10.10。 Vim 7.2巨大 – Stann

+0

もしあなたがvimpagerのようなスクリプトを使っているなら、これらの行を '/ .vim/after/plugin/NERD_tree.vim'スクリプトに移動して、プラグインをオフにして実行しようとしないようにしてください。 –

18

Windowsまたはunix-yシステムを使用していますか?

UNIXシステムの場合は、プラグインを~/.vim/pluginに入れます。プラグインのディレクトリは次のようになります。

$ ls ~/.vim/plugin 
NERD_tree.vim scratch.vim scratchfind.vim 

その後、すぐに作業が開始されます。次のようにvimを実行してみてください:

$ vim . 

NERDツリービューで現在のディレクトリを開く必要があります。

は、Windowsを使っている場合は、ここにプラグインを入れて:コマンドラインからこのようにそれを実行し、あなたがVimを起動したときにNERDTreeを自動的にロードするために取得するにはC:\Program Files\Vim\vim70\plugin


を:

$ vim -c "NERDTree" some_file.txt 

あなたの.bashrcで、このためのエイリアスを設定することができます。

alias vimt='vim -c "NERDTree" $1' 

vimtvimの代わりに)を実行するたびに、ウィンドウの左側にNERDTreeも開きます。

また、あなたの.vimrcこのようにNERDTreeを開始するには、ショートカットキーを追加することができます。

function OpenNERDTree() 
    execute ":NERDTree" 
endfunction 
command -nargs=0 OpenNERDTree :call OpenNERDTree() 

nmap <ESC>t :OpenNERDTree<CR> 

今、あなたはtその後、Escを打ったとき、それはオープンNERDTreeをポップアップ表示されます。

+0

私はUnix-yマシンを使っています。私はNERDTreeがインストールされているので、コマンドラインにvimと入力すると、NERDTreeを起動する必要があります。 Textmateのようにファイルブラウザが常に左に開きます。私はこれを行うにはvimrcに入れるべきか分からない、私は試みた:NERDTreeがコマンドを認識するようではないようだ... – chutsu

+2

私はそこにあることを追加したい:NERDTreeToggleは、あなたのカスタム関数はむしろ冗長になります。 –

+1

優秀なチップ 'エイリアスvimt = 'vim -c」NERDTree「$ 1」 – pedrosaurio

7

ここでの回答には小さな問題があります。

あなたが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 
+1

いいですね...私はページャとしてVimを使い、単に自動コマンドを無効にする引数を追加しました... 'export MANPAGER = 'col -bx | mvim -c ":set ft = man nonu nolist" -c ":autocmd!" -M -R - >/dev/null 2>&1 " –

17

私はファイル引数なしでVimを起動したときにのみNERDTreeを見たいので、私は私の.vimrcにこれを追加しました:https://github.com/scrooloose/nerdtree上の指示に従って

autocmd VimEnter * if !argc() | NERDTree | endif 
7
" NERD Tree 
nmap <silent> <special> <F2> :NERDTreeToggle<RETURN> 
7

、することができます単にpathogen.vim(https://github.com/tpope/vim-pathogen)を使用してください。あなたのvimrcにこれを追加

mkdir -p ~/.vim/autoload ~/.vim/bundle; \ 
curl -Sso ~/.vim/autoload/pathogen.vim \ 
     https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim 

execute pathogen#infect() 

はその後NERDTreeをインストールしますと病原体を取り付け

cd ~/.vim/bundle 
git clone https://github.com/scrooloose/nerdtree.git 

そして、あなたはvimの起動時に、自動的にNERDTreeを開く追加したい場合あなたのvimrcに次のように:

autocmd vimenter * NERDTree 
関連する問題