Was sind die Vorteile der Verwendung von indirekten Puffern ? Unter welchen Umständen sind sie nützlich?
quelle
Was sind die Vorteile der Verwendung von indirekten Puffern ? Unter welchen Umständen sind sie nützlich?
Anzeigen und Bearbeiten mehrerer Positionen desselben Puffers. Sie müssen also nicht in einem langen Puffer scrollen, sondern müssen nur das Fenster auf den sichtbaren Bereich umschalten. Jeder geklonte Puffer hat auch einen anderen Markierungsring, eine andere Verengung und andere Puffereigenschaften. Wenn Sie keinen indirekten Puffer verwenden, sondern ein anderes Fenster desselben Puffers erstellen, wird alles gemeinsam genutzt, und Sie können keine weiteren erweiterten Funktionen ausführen, die über das Anzeigen und Bearbeiten verschiedener Speicherorte hinausgehen. Mit einem indirekten Puffer können Sie beispielsweise den gesamten Codeblock falten und effektiv einen "Tag-Baum" erstellen, ohne den ursprünglichen Puffer zu beeinträchtigen. Bei Verwendung eines Fensters werden beide Puffer in beiden Fenstern gefaltet, da beide Puffer gleich sind.
In der Summe ist der indirekte Puffer ein völlig anderer Puffer, der denselben Text und dieselbe Datei in Ihrem ursprünglichen Puffer enthält. Wenn Sie also den geklonten Puffer speichern, wird auch Ihre ursprüngliche Datei gespeichert.
Ein Anwendungsfall ist die Verwendung eines anderen Hauptmodus für einen Teil einer Datei.
Ich habe zum Beispiel einmal mit XML-Dokumenten mit Code in bestimmten Elementen gearbeitet. Ich wollte in der Lage sein, das gesamte Dokument so zu bearbeiten, als ob es XML wäre, aber dennoch alle wichtigen Modusfunktionen für die Programmiersprache in bestimmten Elementen eingebettet haben. Deshalb habe ich mich auf die Gesamtheit dieser Elemente in einem indirekten Puffer beschränkt, in dem das ausgeführt wird geeigneter Hauptmodus.
Hier ist eine Funktion aus meiner Konfiguration, mit der ich das mache:
Hinweis: Dies ist nicht perfekt, Dinge wie die Schriftsperre erfordern besondere zusätzliche Arbeit für die Verwendung in diesem Szenario.
quelle
Indirekte Puffer geben Ihnen mehrere Ansichten desselben Puffers, insbesondere mehrere Verengungen, von denen jede in vielerlei Hinsicht wie ein separater Puffer wirkt.
Wie der Kommentar für die Bibliothek
narrow-indirect.el
sagt:quelle