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. P>
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. P>
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. P>
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. P>
3 Réponses :
Quelque chose comme ça devrait fonctionner: pour plus d'informations sur personnaliser évidemment le nom de fichier créé dans le premier appel à local-write-file-crochets code> Voir Cette réponse . p> 'write-file code>. p> p>
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 où le script ressemblerait à ceci: p> 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. p> p> rsync code> avec les options appropriées. Vous pouvez soit exécuter ceci dans le After-sauvegarde-crochet code> (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:
Pour améliorer ce problème: Rebind C-X C-S CODE> 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.
Probablement une solution plus générale est un crochet similaire à ce gist: https: //gist.github. Com / code>, il exécutera ce script avec le nom du fichier sauvegardé. p> Ceci vous permet de spécifier une commande rsync code> rsync code> (ou une ou plusieurs autres commandes) sur un Base de répertoire. Certes, cela pourrait être étendu à une arborescence de répertoire à la recherche de ce type de motif. P> p>
Ce script a probablement besoin d'une invite pour confirmer l'utilisation du fichier .on-sauvegarder en particulier lorsque le fichier n'est pas la propriété de l'utilisateur invoquant.