2016-03-24 18 views
0

Ich habe zwei Puffer in Emacs geöffnet nebeneinander können Sie sie in der Reihenfolge auf dem geteilten Bildschirm A, B nennen. Ich habe eine Funktion, die eine neue Datei öffnet (C) und je nachdem, in welchem ​​Puffer (A, B) ich die Funktion ausführe, wird der Puffer, wenn er in A (Szenario 1) ausgeführt wird, nach rechts verschoben (C, A) und wenn in B ausgeführt (Szenario 2), bleibt der Puffer an Ort und Stelle (C, B).Puffer speichern Reihenfolge in Emacs Split-Fenster

Ich benutze eine andere Funktion, die einfach den neuen Puffer (C) schließt, aber jetzt ändert sich die Reihenfolge der Originaldateien (B, A) im ersten Szenario (Szenario 1).

Gibt es eine Möglichkeit, Funktionalität in die (Closing-Funktion, die ich verwende) zu integrieren, um die ursprüngliche Reihenfolge der Dateien A, B zu erhalten?

an ihrer Stelle, nachdem mit ihnen eine andere Funktion zum Schließen dieser neuen zwei Puffer getan. Gibt es eine Möglichkeit, die Reihenfolge beizubehalten, in der sich die ursprünglichen Puffer befanden?

Bedeutung, wenn sie in dieser Reihenfolge A, B Seite zu Seite waren, nach dem Schließen der neuen Puffer halten sie in dieser Reihenfolge und nicht B, A zum Beispiel. Diese

+0

Es klingt wie Sie in einem der vielen verfügbaren Bibliotheken interessiert sein würde, die Emacs Benutzer vorherigen Fensterlayouts und ausgewählte Puffer wiederherstellen helfen - zum Beispiel elscreen, Perspektiven, Arbeitsbereiche. . . . - - Ich habe eine kurze Google-Suche von ** Wiederherstellung Layout-Fenster Emacs ** und habe eine Reihe von Treffern. – lawlist

+0

Welche Funktion verwenden Sie, um Puffer C zu öffnen? Welche Funktion Sie auch verwenden, scheint C links liegen zu lassen, aber Sie können es wahrscheinlich so konfigurieren, dass es sich über die gegenüberliegenden Fenster öffnet, die Sie verwenden. –

+0

Brian, die Funktion, die ich verwende, muss C auf der linken Seite (ich will es so), aber nach dem Schließen von C möchte ich die ursprüngliche Reihenfolge der Dateien erhalten bleiben. Szenario 2 ist kein Problem, da die Reihenfolge bleibt (A, B), aber Szenario 1 ist das Problem. Ich hatte auf einige Funktionen gehofft, die die Reihenfolge dieser Puffer bei der Ausführung der Funktion speichern würden. Bei Verwendung der Closing-Funktion wurde die gespeicherte Reihenfolge beibehalten. – SFbay007

Antwort

1

es gelöst:

(setq my-window-conf (current-window-configuration)) 
    .... 
    (set-window-configuration my-window-conf) ;; restore window layout and 
              ;; selected buffers 
+0

Es wäre nützlich, es als ein 'mit-gespeichert-Layout'-Konstrukt zu haben. – AlwaysLearning