2012-04-26 5 views
3

here에 대해 물어 본 NERDTree 용 플러그인을 만들고 있습니다.vimscript에서 NERDTree 버퍼에 액세스 할 수 있습니까?

표시 문자열을 편집하는 데 필요한 후크가있는 NERDTree에 Githubpull request에 대한 개념 증명 플러그인이 있습니다.

내가 작업하고 싶은 것은 파일이 저장 될 때마다 NERDTree 버퍼를 새로 고치는 것입니다. 대신 NERDTree 하나,

autocmd BufWrite * call NERDTreeRender() 

작동,하지만 그것은 기록 된 버퍼에 NERDTreeRender을()가 호출 : 같은 것을 - 나는 NERDTree API 함수 "NERDTreeRender()는"나는 필요한 모든 것이라고 생각했다 . 해당 특정 버퍼 bufwrite에 autocmd 실행할 ​​수있는 방법이 있습니까? 실행 중 : vim의 버퍼가 NERDTree에 불행히도 번호가 매겨진 버퍼가 있음을 알리지 못합니다.

특정 버퍼에 쓰기 작업시 autocmd가 실행되지 않도록하려면 다른 사람이이 문제를 해결할 수있는 다른 방법을 알고 있습니까?

답변

1
당신은 useopenswitchbuf을 설정하고 호출하여 NERDTree 버퍼로 전환 할 수 있습니다

sbuf NERD*

뭔가 같은 :

autocmd BufWrite * call DoRender() 

function! DoRender() 
    set switchbuf+=useopen 
    sbuf NERD* 
    call NERDTreeRender() 
endfunction