8
votes

Comment faire enregistrer des fichiers EMACS à plusieurs endroits?

Y a-t-il un moyen facile d'avoir Emacs Sauvegarder le tampon actuel à deux endroits? Je pouvais dans le "accrochage après-gamme" de copier programme le fichier actuel à un deuxième emplacement, mais écrivez le code LISP pour cela pourrait prendre un certain temps.

Pour ceux qui sont curieux pourquoi je veux ceci: Je veux que les changements que je produisent à mon JSP soit immédiatement déployé dans le répertoire WebApps / MyApp de Tomcat.

Donc, chaque fois que je sauvegarde un fichier JSP, je veux que ce soit enregistré dans mon emplacement source contrôlé par la version actuelle ainsi que dans le répertoire où mon application Tomcat est déployée.

Je ne peux pas utiliser de liens symboliques car j'utilise une machine Windows et l'emplacement de destination est un répertoire de la boîte Linux exportée via Samba.


0 commentaires

3 Réponses :


7
votes

Quelque chose comme ça devrait fonctionner: xxx

pour plus d'informations sur local-write-file-crochets Voir Cette réponse .

personnaliser évidemment le nom de fichier créé dans le premier appel à 'write-file .


0 commentaires

6
votes

Compte tenu du problème que vous essayez de résoudre est de déployer des modifications immédiatement, je vous suggère d'écrire un script (dans votre cas un fichier de commandes) qui invoque rsync avec les options appropriées. Vous pouvez soit exécuter ceci dans le After-sauvegarde-crochet (qui est probablement surkill) ou attribuer une touche de raccourci pour l'exécuter pour vous lorsque vous avez effectué un ensemble de modifications que vous souhaitez tester. Quelque chose comme: xxx

où le script ressemblerait à ceci: xxx

Ceci est probablement mieux que d'enregistrer le même fichier dans plusieurs endroits, Comme il assure que le répertoire de déploiement correspond toujours à ce que vous avez dans votre référentiel source.


2 commentaires

Pour améliorer ce problème: Rebind C-X C-S Pour effectuer à la fois l'enregistrement de fichier normal et le script de déploiement.


J'aime le commentaire de JDMICHAL avec votre réponse. Merci.