Je travaille actuellement sur plusieurs projets. Je veux qu'une seule instance d'Emacs les gère tous. Ce que je veux, c'est un comportement de type tmux dans lequel chaque «fenêtre» (au sens d'Emacs) correspond à un projet qui contient des tampons des fichiers liés à ce projet. Il y a plusieurs fenêtres, chacune correspondant à un projet et je devrais pouvoir basculer entre elles (quelque chose de similaire à C-b w
)
Cette fonctionnalité est-elle déjà présente sous une forme ou une autre? Je suppose que ce sera cool d'avoir comme les autres options sont soit:
- Ouvrez plusieurs instances d'Emacs.
- Avoir tous les fichiers de tous les projets dans une seule instance, ce qui rend la commutation des tampons difficile.
ace-jump-mode
en soi une solution intéressante pour sauter rapidement avec votre curseur dans un tampon (si vous ne l'avez pas déjà).frame-bufs
. Voir aussi Comment intercepter un fichier avant son ouverture et décider quelle trame - stackoverflow.com/questions/18346785/… - pour afficher un tampon dans une trame cible, et vous pouvez utiliserframe-buffs--add-buffer
conjointement pour obtenir la trame associée. Vous pouvez vous marierframe-bufs
avectabbar
et associer / supprimer des tampons dynamiquement: emacs.stackexchange.com/a/10112/2287frame-bufs
associer des tampons à un cadre particulier: github.com/alpaker/Frame-Bufs/blob/master/frame-bufs.elRéponses:
Vous pouvez utiliser la perspective pour gérer des projets. De son README:
Il existe également une autre version en mode persp , qui est un peu différente de l'original. Les perspectives sont partagées entre les images et les états peuvent être enregistrés sur le disque.
Si vous utilisez un projectile , il existe également une intégration en perspective .
la source
Vous pouvez essayer le mode Eyebrowse , qui gère plusieurs dispositions de fenêtres (peut-être compliquées). Vous pouvez basculer entre les configurations de fenêtres à l'aide de touches telles que
C-c C-w 1
etC-c C-w 2
.la source
Une solution «barebones» pourrait être utilisée
C-x r w
pour enregistrer l'état actuel de la fenêtre etC-x r j
revenir à une précédente.la source
J'utilise une combinaison de deux packages différents.
Plus important encore, j'utilise Projectile pour travailler sur un "projet" et des fichiers de recherche floue. J'utilise plusieurs cadres, un pour chaque projet sur lequel je travaille actuellement. Vous n'avez vraiment besoin que de connaître
C-x 5 2
etC-x 5 0
de créer / tuer un cadre. Pour gérer la commutation entre les projets et pour stocker l'état de la configuration / fractionnement des fenêtres, j'utilise des groupes de travail pour les fenêtres (pour emacs) .J'aime cette configuration car je peux potentiellement échanger un package contre un autre.
la source