当我从NERDTree选择一个目录并进入该目录时,是否有可能使该目录成为根目录?也就是说,每次我选择一个新目录时,以下两个命令将被触发:cd
和:NERDTreeCWD
?
谢谢!
在您的vimrc文件中添加以下内容:let g:NERDTreeChDirMode = 2
cd
会将目录更改为该节点,并在节点上键入C
,通过NERDTree“进入”它。Ccd
- C
将进入目录并将光标留在其上,cd
将更改工作目录为它。:help NERDTreeAPI
以获取详细信息,但简短版本是:在~/.vim/nerdtree_plugin/cd_mapping.vim
中放置一个文件,其中包含以下内容。call NERDTreeAddKeyMap({
\ 'key': '_C',
\ 'callback': 'NERDTreeEnterDirectoryAndCD',
\ 'quickhelpText': 'Enter directory and cd into it' })
function! NERDTreeEnterDirectoryAndCD()
let node = g:NERDTreeDirNode.GetSelected()
exec 'cd ' . node.path.str({'format': 'Cd'})
NERDTreeCWD
endfunction
使用按键绑定 _C
就可以达到目的。将 key
属性更改为您希望的按键即可。
cd
CD
(cd -> 更改当前工作目录,CD -> 将树的根目录设置为当前工作目录)
cd
CD
序列的功能基本相同。优点:速度非常快 - 与C
相比没有延迟。缺点:输入时需要更长的时间。 - daGo