Comment puis-je dire à vim de compiler un document lors de la sauvegarde?

11

J'aimerais que vim compile automatiquement un document lout (similaire à LaTeX) chaque fois que j'enregistre le document.

Existe-t-il une possibilité d'ajouter une telle fonctionnalité pour enregistrer? (De préférence sans utiliser autre chose que :wpour enregistrer.)

Georg Schölly
la source
Voir aussi la même question sur le TEX Stack Exchange: tex.stackexchange.com/questions/2672/…
feuGene

Réponses:

12

Vous pouvez le faire avec une autocommande. Je n'en ai pas qui se charge automatiquement, mais si je sais que je vais passer par le cycle d'édition-compilation-édition pendant un certain temps avec un fichier, j'exécuterai quelque chose comme ceci sur la ligne de commande Vim:

:au BufWritePost * make

Vous pouvez remplacer makepar n'importe quelle commande de génération ou d'exécution appropriée.

garyjohn
la source
2

La réponse de @garyjohn est correcte.

et permettez-moi d'ajouter un exemple sur la façon d'exécuter plusieurs compilations sur coffeescript:

# add these lines to your .vimrc file (~/.vimrc in my pc)
autocmd BufWritePost,FileWritePost *.coffee :silent !coffee --compile --join appstore/static/javascripts/angular/controllers.js file1.coffee file2.coffee

autocmd BufWritePost,FileWritePost *.coffee :silent !coffee --compile appstore/static/javascripts/angular/app.coffee appstore/static/javascripts/angular/directives.coffee appstore/static/javascripts/angular/filters.coffee appstore/static/javascripts/angular/services.coffee
Siwei Shen 申思维
la source