Vous pouvez construire une chaîne, puis utilisez la commande d'exécution:
exec "source " . $HOME . "/.vim/myscript_" . l:foo . ".vim"
(Le l:foo
ici est un exemple d'utilisation d'une variable locale dans une fonction.)
Modifier:
Mais en fait exec
est exagérer dans ce cas particulier. Comme raiponce shows here, la OPs tâche peut être effectuée directement avec:
source $HOME/.vim/myscript_$FOO.vim
Bien que vim ne nous emballons les noms de variables parfaitement dans ${...}
comme laissez pas nous pouvions dans la coquille, dans ce cas, nous avons la chance que HOME
est terminée par le /
et FOO
par le .
en général, exec
serait être nécessaire si vous voulez suivre l'une des variables par un caractère non-terminaison. Par exemple:
exec "source " . $BAR . "_script.vim"
insérerait la variable BAR
, alors que la suivante essaierait de trouver une variable appelée BAR_script
:
source $BAR_script.vim " Possibly not what you wanted!
Très bien, merci! –