以编程方式更改 NERDTreeWinSize

Programmatically change NERDTreeWinSize

我喜欢以编程方式更改 vim-插件 NERDTreeWinSize 变量。

我在 vimrc 中添加了以下函数,但调用该函数时没有任何反应。有什么提示吗?

fun! NerdTreeWinSize( arg )
  let g:NERDTreeWinSize=a:arg
endfunction
command! -nargs=* Ntws call NerdTreeWinSize( '<args>' )

我可以通过 :Ntws 200 调用函数,然后希望 NERDTreeWinSize 更改为 200

我也意识到当我在 vim 命令行中 运行 let g:NERDTreeWinSize=100 时没有任何反应。

但是当我将行 let g:NERDTreeWinSize=100 添加到我的 vimrc 时 vim 会调整 NERDTreeWinSize.

您的代码是正确的,并且(至少我的 NERDTree 版本)在构建 UI 时重新计算 g:NERDTreeWinSize 变量。但是,此更改 不会 影响打开的 NERDTree windows,只会影响新的。因此,您需要重新打开 NERDTree 以使更改生效,也许通过

command! -nargs=* Ntws call NerdTreeWinSize( '<args>' ) | NERDTree