Ich arbeite gerade an mehreren Projekten. Ich möchte, dass eine einzelne Instanz von Emacs sie alle verarbeitet. Was ich möchte, ist ein tmux-ähnliches Verhalten, bei dem jedes 'Fenster' (im Emacs-Sinne) einem Projekt entspricht, das Puffer der Dateien enthält, die sich auf dieses Projekt beziehen. Es gibt mehrere Fenster, von denen jedes einem Projekt entspricht, und ich sollte in der Lage sein, zwischen ihnen zu wechseln (ähnlich wie C-b w
)
Ist diese Funktionalität bereits in irgendeiner Form vorhanden? Ich denke, es wird cool sein, da die anderen Optionen entweder sind:
- Haben Sie mehrere Instanzen von Emacs geöffnet.
- Haben Sie alle Dateien aller Projekte in einer einzigen Instanz, was das Wechseln der Puffer zu einem Problem macht.
ace-jump-mode
an sich eine coole Lösung, um schnell mit dem Cursor in einem Puffer herumzuspringen (falls Sie ihn noch nicht haben).frame-bufs
. Siehe auch So fangen Sie eine Datei ab, bevor sie geöffnet wird, und entscheiden, welcher Frame - stackoverflow.com/questions/18346785/… - einen Puffer in einem Zielframe anzeigen soll. Sie können ihn auch verwendenframe-buffs--add-buffer
, um den Frame zuzuordnen . Sie könnenframe-bufs
mittabbar
Puffern heiraten und sie dynamisch verknüpfen / entfernen: emacs.stackexchange.com/a/10112/2287frame-bufs
um Puffer einem bestimmten FrameAntworten:
Sie können die Perspektive zum Verwalten von Projekten verwenden. Aus seiner README:
Es gibt auch einen anderen Persp-Modus , der sich ein wenig vom Original unterscheidet. Die Perspektiven werden von Frames gemeinsam genutzt und die Status können auf der Festplatte gespeichert werden.
Wenn Sie ein Projektil verwenden , gibt es auch eine perspektivische Integration .
quelle
Sie können den Augenbrauenmodus ausprobieren , der mehrere (möglicherweise komplizierte) Fensterlayouts verwaltet. Sie können mit Tastenanschlägen wie
C-c C-w 1
und zwischen Fensterkonfigurationen wechselnC-c C-w 2
.quelle
Eine "Barebone" -Lösung kann verwendet werden
C-x r w
, um den aktuellen Fensterstatus aufzuzeichnen undC-x r j
zu einem früheren zurückzukehren.quelle
Ich benutze eine Kombination aus ein paar verschiedenen Paketen.
Am wichtigsten ist, dass ich Projectile verwende, um an einem "Projekt" zu arbeiten und Dateien unscharf zu finden. Ich verwende mehrere Frames, einen für jedes Projekt, an dem ich gerade arbeite. Sie müssen wirklich nur einen Frame kennen
C-x 5 2
undC-x 5 0
erstellen / töten. Um das Wechseln zwischen Projekten zu verwalten und den Status der Fensterkonfiguration / -aufteilung zu speichern, verwende ich Arbeitsgruppen für Windows (für Emacs) .Ich mag dieses Setup, weil ich möglicherweise ein Paket gegen ein anderes austauschen kann.
quelle