API 如何重用 NerdTree 核心功能?
How to reuse NerdTree core function with API?
我正在寻找一种在 NERDTreeAddKeyMap 回调函数上重用核心 nerdtree 函数的方法,但我在网上查找后没有找到方法。
我尝试了一些类似下面的方法:
call NERDTreeAddKeyMap({
\ 'key': '<Left>',
\ 'scope': 'Node',
\ 'callback': 'NerdTest' })
function! NerdTest(node)
call closeCurrentDir(a:node)
endfunction
但是我在尝试按下目录时遇到了这个错误
E117: Unknown function: closeCurrentDir
有什么建议吗?
此致,
closeCurrentDir function 是脚本本地的;不暴露在外面。
有一些技巧可以使其易于访问,或者您可以要求作者将其公开为 :help autoload
函数。
但是,由于该功能映射到一个键 (:help NERDTree-x
),您可以通过 :normal
触发该键。如果您使用相应的配置变量 (g:NERDTreeMapCloseDir
) 而不是对密钥进行硬编码,这甚至允许重新映射。
function! NerdTest(node)
execute 'normal' g:NERDTreeMapCloseDir
endfunction
我正在寻找一种在 NERDTreeAddKeyMap 回调函数上重用核心 nerdtree 函数的方法,但我在网上查找后没有找到方法。
我尝试了一些类似下面的方法:
call NERDTreeAddKeyMap({
\ 'key': '<Left>',
\ 'scope': 'Node',
\ 'callback': 'NerdTest' })
function! NerdTest(node)
call closeCurrentDir(a:node)
endfunction
但是我在尝试按下目录时遇到了这个错误
E117: Unknown function: closeCurrentDir
有什么建议吗?
此致,
closeCurrentDir function 是脚本本地的;不暴露在外面。
有一些技巧可以使其易于访问,或者您可以要求作者将其公开为 :help autoload
函数。
但是,由于该功能映射到一个键 (:help NERDTree-x
),您可以通过 :normal
触发该键。如果您使用相应的配置变量 (g:NERDTreeMapCloseDir
) 而不是对密钥进行硬编码,这甚至允许重新映射。
function! NerdTest(node)
execute 'normal' g:NERDTreeMapCloseDir
endfunction