vim的set用法有个问题
vim的set用法有个问题
vim中的变量有很多种,你这里使用的是两种不同的类型,一种是普通变量(mytmpdir),另一种叫做选项(option),你这里是dir,对选项的引用需要加符号‘&’。
我奇怪的是你在set dir=mytmpdir."dir"之后,再echo dir为什么不报错,因为echo dir这个指令中的dir是个普通变量,而在此之前你没有定义过这个变量。因为你前面的set dir=mytmpdir."dir"修改的是叫做dir的选项,选项是vim内部的,不能自己定义。
状况2中的echo dir也不应该出现/home/test/tmp/dir这个结果吧,只有echo &dir才会输出这个吧。
回答4:要想通过set来实现你要的效果,需要使用execute指令:
:exe "set dir=".mytmpdir."dir"
这样就可以了