Question

Je veux utiliser la fonction expand dans un autocmd. Je suis en particulier, l'adaptation d'un pointe par Paul Biggar et je voulais d'utiliser la commande automatique qui suit dans mon .gvimrc:

autocmd FileType tex set makeprg=rubber-info\ expand("%:t:r").log

- Ce qui bien sûr ne fonctionne pas. Donc ce que je veux vraiment que cela signifie est que, lors de l'ouverture d'un fichier tex, la variable makeprg est réglée sur la valeur de rubber-info filename.logfilename est le nom du fichier TeX sans son extension de fichier.

Comment puis-je y arriver?

Était-ce utile?

La solution

Vous pouvez essayer quelque chose comme ça; non testé, ne peut pas être tout à fait exact, mais en utilisant exe est généralement comment je contourner ce genre de problème.

autocmd FileType tex exe "set makeprg=rubber-info\\ " . expand("%:t:r") . ".log"

Autres conseils

L'alternative consiste à définir makeprg en utilisant &l:makeprg:

autocmd FileType tex let &l:makeprg = "rubber-info " . expand("%:t:r") . ".log"

Voir :help let-& si vous voulez plus d'informations sur les options de paramètres à l'aide :let.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top