:将选项设置为expand()的输出

时间:2017-09-18 18:36:50

标签: vim

我在.vimrc中设置的其中一个选项中添加了一点逻辑,如下所示:

set backupdir=expand('<sfile>:p:h') . '/backup//'

我无法弄清楚的是如何进行这种扩展。看起来set=只是不理解/执行子函数调用,就像我正在进行正常的函数调用或使用let作为局部变量一样。

如何在vim选项中拉出此扩展+连接?

1 个答案:

答案 0 :(得分:3)

:set不能处理表达式,只能使用值。你有两个解决方案:

使用:execute

execute "set backupdir=" . expand('<sfile>:p:h') . "/backup//"

请参阅:help :execute

使用:let

let &backupdir = expand('<sfile>:p:h') . '/backup//'

请参阅:help :let:help :let-&