10
votes

Avec Emacs, comment échangez-vous la position de 2 fenêtres

J'ai 2 fenêtres ouvertes dans Emacs et je voudrais échanger leurs positions.

C'est-à-dire que vous envisagez d'avoir une REPP au-dessus du fichier source et je voudrais échanger leurs emplacements afin que la replication soit inférieure au fichier source.

J'aimerais aussi préserver les tailles des fenêtres


0 commentaires

4 Réponses :


7
votes

J'ai volé sans vergogne cela depuis Steve Yegge's .emacs

(defun transpose-windows ()
  (interactive)
  (let ((this-buffer (window-buffer (selected-window)))
        (other-buffer (prog2
                          (other-window +1)
                          (window-buffer (selected-window))
                        (other-window -1))))
    (switch-to-buffer other-buffer)
    (switch-to-buffer-other-window this-buffer)
    (other-window -1)))


1 commentaires

Je viens de voir aussi la poste de Stevey :)



4
votes

La version suivante fonctionne avec n'importe quel nombre de fenêtres. Lorsqu'il y a plus de deux fenêtres, des invocations répétées rendront le tampon sélectionné apparaissent successivement dans chaque fenêtre. XXX


0 commentaires

1
votes

voir http://www.emacswiki.org/cgi-bin /wiki/buffer-move.el . Vous pouvez l'installer via ELPA


0 commentaires

2
votes

Je trouve le Transposeframe bibliothèque utile. Je principalement l'utiliser pour échanger deux fenêtres, conformément à cette question; Mais il fournit une fonctionnalité plus générale que celle.

Suivez le lien pour voir les diagrammes ASCII des différentes transformations.


0 commentaires