我想在当前缓冲区中执行(通过键映射):NERDTreeCWD和NERDTreeFind。所以我会这样做:
map <F8> :ProjectRootExe NERDTreeCWD<CR>:NERDTreeFind<CR>
问题是,NERDTreeCWD会伪造NERDTree,并使“NERDTreeFind”不起作用。
所以我需要打开NERDTree而不关注它。我的想法是调用:b#
跳转到最后一个缓冲区:
map <F8> :ProjectRootExe NERDTreeCWD<CR>:b#<CR>:NERDTreeFind<CR>
不幸的是,似乎:b#
在NERDTree中不起作用。
答案 0 :(得分:2)
您可以使用<C-w>p
返回上一个窗口;在命令行中,等效的:wincmd p
很方便。有了这个,您可以将整个映射编写为单个命令行:
nnoremap <F8> :ProjectRootExe NERDTreeCWD<Bar>wincmd p<Bar>NERDTreeFind<CR>
You should use :noremap
;它使映射不受重映射和递归的影响。功能