web-dev-qa-db-ja.com

NERDTreeは新しいファイルをリロードします

NERDTreeで開かれた同じディレクトリにファイルを追加する場合、追加されたファイルを確認できる唯一の方法は、vimを終了して再起動することです。

NERDTreeのファイルをリロードする方法はありますか?

226
lesce

NERDTreeを閉じて再度開くか、単にヒットすることができます r 現在のディレクトリのリストを更新するか、 R ルートディレクトリのリストを更新します。

NERDTreeウィンドウの上部に「Press?for help」と表示されていますか?それはあなたが押すことができることを意味します ? 助けを求めて。その場合、NERDTreeショートカットの完全なリストが表示されます。それはきちんとしている。

より一般的には、多くのプラグインには、:help <pluginame>でアクセスできる詳細なドキュメントがあります。

391
romainl

@romainlが上で答えたように。押す r 現在のディレクトリを更新する、または R ルートディレクトリを更新します。

を押して、nerdTree自体から新しいファイルを追加することを検討できます。 m、その後 a 新しいファイル(または末尾のスラッシュを追加してディレクトリ)を追加します。この方法では、新しく追加されたファイルを表示するためにnerdTreeを更新する必要はありません。

21
Muhammad Reda

NERDTreeを更新

打つ代わりに R NERDTreeウィンドウでは、それを行うカスタムマップを使用します。

nmap <Leader>r :NERDTreeRefreshRoot

私はそれをマッピングしました Leader + r、しかしあなたはあなたが望むものにそれをマップすることができます。


説明:

  • 最初にNERDTreeウィンドウに切り替えます
  • 次に、ルートNodeを更新します(Rキーをシミュレートすることにより)
  • そして最後に前のウィンドウに戻ります

注:最後のステップを NERPTreeとともにCtrlPを更新 に追加できます。

7
Sheharyar

feedkeys関数を使用して、Rボタンを押すことができます。ちょうどこのような:

call feedkeys("R")  

.vimrcファイルで関数を定義しました:

fun! ToggleNERDTreeWithRefresh()
    :NERDTreeToggle 
    if(exists("b:NERDTreeType") == 1)
        call feedkeys("R")  
    endif   
endf 

nmap <silent> <c-l> :call ToggleNERDTreeWithRefresh()<cr>  

だから、私が入力すると ctrl+l、NERDTreeが切り替えられ、ルートディレクトリが更新されます。

4
xus