Welche Rolle spielt der Rahmenparameter „Buried-Buffer-List“ in Emacs?
Frage
In Emacs habe ich den folgenden Codeausschnitt eingelesen simple.el
:
(frame-parameter frame 'buried-buffer-list)
Was ist die genaue Bedeutung des 'buried-buffer-list
Parameter?Wofür wird es verwendet?
Lösung
Das Ergebnis von M-x beschreibt den RET-Rahmenparameter der Funktion Ist:
Frame-Parameter ist eine integrierte Funktion.
(frame-parameter FRAME PARAMETER)
Der Wert des Parameters des Parameters des Return Frame.Wenn der Rahmen NIL ist, beschreiben Sie den aktuell ausgewählten Rahmen.
Schauen Sie auch im Elisp-Infohandbuch für den aufgerufenen Knoten nach „Frame/Frame-Parameter“.Ich konnte keinen spezifischen Verweis auf „buried-buffer-list“ finden.
Möglicherweise können Sie den Wert ermitteln, indem Sie Folgendes auswerten:
(cdr (frame-parameter FRAME 'buffer-list))
da ein „vergrabener Puffer“ nur ein Puffer ist, der für einen bestimmten Frame an das Ende der Pufferliste verschoben wurde.Weitere Informationen finden Sie in der Dokumentation bury-buffer
:
bury-buffer ist eine interaktive kompilierte Lisp-Funktion in „window.el“.
(bury-buffer & optional BUFFER-OR-NAME)
Fügen Sie BUFFER-OR-NAME am Ende der Liste aller Puffer ein.Dort ist es der am wenigsten wahrscheinliche Kandidat für "Andere-Puffer", um zurückzukehren.Somit ist der am wenigsten wahrscheinliche Puffer für CX B standardmäßig ausgewählt.
Sie können einen Puffernamen als Puffer-oder-Name oder ein tatsächliches Pufferobjekt angeben.Wenn BUFFER-OR-NAME null ist oder weggelassen wird, wird der aktuelle Puffer vergraben.Wenn der Puffer-oder -name nicht null oder weggelassen ist, entfernen Sie den aktuellen Puffer aus dem ausgewählten Fenster, wenn er dort angezeigt wird.
Andere Tipps
Ein kurzer Blick auf http://www.update.uu.se/~ams/slask/emacs/src/frame.h kehrt zurück:
List of buffers that were viewed, then buried in this frame. The
most recently buried buffer is first.
Theoretisch können Sie also cdr verwenden, um dieselbe Liste zu erhalten, wie Ben Collins gesagt hat.