2017-12-18 180 views

回答

1

nerdtree-git-plugin修改,這個片段將自動忽略的亮點採用Commment新版本NERDTree沒有|-類似前綴的文件(這會導致同步匹配失敗?)。

function! GitDimIgnoredFiles() 
    let gitcmd = 'git -c color.status=false status -s --ignored' 
    if exists('b:NERDTree') 
     let root = b:NERDTree.root.path.str() 
    else 
     let root = './' 
    endif 
    let files = split(system(gitcmd.' '.root), '\n') 

    call GitFindIgnoredFiles(files) 
endfunction 

function! GitFindIgnoredFiles(files) 
    for file in a:files 
     let pre = file[0:1] 
     if pre == '!!' 
      let ignored = split(file[3:], '/')[-1] 
      exec 'syn match Comment #\<'.escape(ignored, '~').'\(\.\)\@!\># containedin=NERDTreeFile' 
     endif 
    endfor 
endfunction 

autocmd FileType nerdtree  :call GitDimIgnoredFiles() 
+0

我粘貼這對的.vimrc,當出並在vim,並得到了很多錯誤,startind用'檢測到錯誤而處理功能GitDimIgnoredFiles [9] .. GitFindIgnoredFiles: '然後接着大多'E402 :模式後的垃圾:/ path/to/a/folder // containedin = NERDTreeFile'和'E475:無效參數:Comment/path/to/a/folder // containedin = NERDTreeFile'。請指教。 – mljrg

+0

已更新,以解決該錯誤,但仍是一種簡化的方法。 – leaf

+0

這可以成爲一個完整高效的解決方案的開始。例如,它不會調暗排除的目錄及其內容。 – mljrg