如何在不聚焦的情况下打开 NERDTree
How to open NERDTree without focusing it
我想在当前缓冲区中执行(通过键盘映射):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 中。
您可以使用 <C-w>p
返回到之前的 window;在命令行中,等效的 :wincmd p
会派上用场。这样,您就可以将整个映射编写为单个命令行:
nnoremap <F8> :ProjectRootExe NERDTreeCWD<Bar>wincmd p<Bar>NERDTreeFind<CR>
You should use :noremap
;它使映射不受重新映射和递归的影响。
我想在当前缓冲区中执行(通过键盘映射):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 中。
您可以使用 <C-w>p
返回到之前的 window;在命令行中,等效的 :wincmd p
会派上用场。这样,您就可以将整个映射编写为单个命令行:
nnoremap <F8> :ProjectRootExe NERDTreeCWD<Bar>wincmd p<Bar>NERDTreeFind<CR>
You should use :noremap
;它使映射不受重新映射和递归的影响。