Vouliez-vous vraiment dire fermer les tampons, au lieu de fermer les fenêtres , c'est-à-dire revenir généralement à une seule fenêtre affichant un seul fichier (mais laissant les fichiers ouverts)?
Gilles 'SO- arrête d'être méchant'
Oui, je veux dire tuer les tampons (Cx k)
denys
Pourquoi voulez-vous faire ça? Souvent, lorsque je fais un ediff, je dois continuer à travailler sur l'un des tampons par la suite.
Andrew Swann
Dans mon cas, j'utilise ztree-diff pour afficher les différences et je ne suis pas intéressé par les fichiers après la différence la plupart du temps.
Notez que cela tuera toujours les tampons ediff, même s'ils n'ont pas été ouverts par ediff, par exemple, vous avez appelé ediff-buffersavec certains tampons que vous aviez ouverts pour commencer.
Si vous voulez vous pouvez aussi tuer *ediff-errors*, *ediff-diff*, *Ediff-Registry*et *ediff-fine-diff*aussi, mais ceux -ci ne généralement me dérange pas.
J'ajoute une réponse parce que c'est le premier lien qui est apparu pour moi sur ce sujet, et c'est en effet beaucoup plus simple.
Vous pouvez passer un préfixe à "q" et il vous demandera de tuer les tampons ediff.
Cu q
Si vous le personnalisez, ediff-keep-variantsil inversera le comportement: invite à tuer les tampons à la sortie et, si vous utilisez le préfixe, les laissera ouverts.
Gardez à l'esprit que les hooks s'exécutant avant le démarrage d'ediff-cleanup-mess dans ediff-control-buffer; ils doivent également laisser ediff-control-buffer comme tampon courant à la fin. Les hooks exécutés après ediff-cleanup-mess doivent s'attendre à ce que le tampon actuel soit le tampon A ou le tampon B.
Donc, je tue aussi le tampon * Ediff Control Panel * . D'autres tampons ediff peuvent également être ajoutés.
Il n'est pas recommandé de lier des lambdafonctions aux crochets (et aux conseils). Cela rend la révision des variables de hook et la suppression des fonctions des hooks pénibles.
Kaushal Modi du
2
Cela ferme effectivement les fenêtres, mais la question demande de tuer les tampons .
Réponses:
Notez que cela tuera toujours les tampons ediff, même s'ils n'ont pas été ouverts par ediff, par exemple, vous avez appelé
ediff-buffers
avec certains tampons que vous aviez ouverts pour commencer.Si vous voulez vous pouvez aussi tuer
*ediff-errors*
,*ediff-diff*
,*Ediff-Registry*
et*ediff-fine-diff*
aussi, mais ceux -ci ne généralement me dérange pas.la source
J'ajoute une réponse parce que c'est le premier lien qui est apparu pour moi sur ce sujet, et c'est en effet beaucoup plus simple.
Vous pouvez passer un préfixe à "q" et il vous demandera de tuer les tampons ediff.
Si vous le personnalisez,
ediff-keep-variants
il inversera le comportement: invite à tuer les tampons à la sortie et, si vous utilisez le préfixe, les laissera ouverts.(obtenu cela du manuel ediff)
la source
J'utilise ce code (GNU Emacs 25.3.1 x86_64-pc-linux-gnu), en suivant https://emacs.stackexchange.com/a/17089/18662
Comme indiqué dans le manuel GNU Emacs concernant ediff-quit-hook ( https://www.gnu.org/software/emacs/manual/html_node/ediff/Hooks.html ):
Gardez à l'esprit que les hooks s'exécutant avant le démarrage d'ediff-cleanup-mess dans ediff-control-buffer; ils doivent également laisser ediff-control-buffer comme tampon courant à la fin. Les hooks exécutés après ediff-cleanup-mess doivent s'attendre à ce que le tampon actuel soit le tampon A ou le tampon B.
Donc, je tue aussi le tampon * Ediff Control Panel * . D'autres tampons ediff peuvent également être ajoutés.
la source
Vous pouvez essayer ce crochet:
la source
lambda
fonctions aux crochets (et aux conseils). Cela rend la révision des variables de hook et la suppression des fonctions des hooks pénibles.Voici ce que j'utilise pour fermer les fenêtres:
la source