Вы можете создать строку и затем использовать команду execute:
exec "source " . $HOME . "/.vim/myscript_" . l:foo . ".vim"
(Здесь l:foo
является примером использования локальной переменной из функции.)
Edit:
Но на самом деле exec
излишне в этом конкретном случае. Как показывает rampion , задачу OP можно выполнить напрямую с помощью:
source $HOME/.vim/myscript_$FOO.vim
Хотя vim не позволяет нам аккуратно оборачивать имена переменных в ${...}
, как в оболочке, в этом случае нам повезло, что HOME
завершается /
и FOO
.
Как правило, exec
потребуется , если вы хотите следовать за одной из переменных не заканчивающимся символом. Например:
exec "source " . $BAR . "_script.vim"
вставит переменную BAR
, в то время как следующее попытается найти переменную с именем BAR_script
:
source $BAR_script.vim " Possibly not what you wanted!