在set命令中扩展vim变量

时间:2016-04-24 18:26:55

标签: vim

我试图相对于脚本返回的目录动态设置path

我让变量变得正确,但是,在我尝试将它们添加到path之前,我仍然坚持让它们扩展。

你能帮忙吗? (关于如何更好地做到这一点的任何评论都是受欢迎的 - 我不太了解vimscript。)

function! FindRoot()
  let root=system('fs_findRoot |tr -d "\n"')
  if !empty(root)
    let src1=root.'/src1'
    let pr_r=root.'/pr/HEAD/r/nat'
    let pr_d=root.'/pr/HEAD/d/nat'
    echom src1 pr_r pr_d
    set path^=pr_r
    set path^=pr_d
    set path^=src1
  endif
endfunction

1 个答案:

答案 0 :(得分:1)

您无法使用:set将表达式用作任何选项的值。

您需要使用:let

let &path = pr_r . "," . pr_d . "," . src1 . "," . &path

请参阅:help :let-&