Réponses:
La execute
fonction prend une chaîne comme argument, elle développe la chaîne et l'exécute avec une commande ex régulière. Ainsi vous pouvez faire:
function! MyFunction(someArg)
execute "normal! ". a:someArg. "l"
endfunction
Le .
est un opérateur standard vimscript à cordes concaténer.
execute
peut être raccourci exe
.
Voir :h :execute
EDIT J'ajouterai un point sur le commentaire de @Christian Brabandt sur la concaténation avec a .
.
Le doc dit:
Plusieurs arguments sont concaténés, avec un espace entre les deux. Pour éviter l'espace supplémentaire, utilisez le "." pour concaténer des chaînes en un seul argument.
La commande pourrait donc être:
execute "normal!" a:someArg . "l"
La commande exécutée sera:
normal! 2l
exe "norm!" variable