NERDTree を .vimrc に追加するにはどうすればよいですか?
7 に答える
さて、以前のバージョンは少し簡潔でしたが、探している答えは、以下の行を~/.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 が開きます。
NERDTreeの指示に従って、pathogen.vimを使用できます。次を使用してインストールします。
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>
ここでの答えには小さな問題があります。
vimpagerなどのモードvim --noplugin
を使用するスクリプトを呼び出すか使用すると、次のエラーが発生します。--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