10
votes

Comment puis-je empêcher Emacs redimensionner mes fenêtres?

Mon environnement de travail LISP a le cadre divisé en deux fenêtres, le premier pour le codage principal, ce dernier pour mon évaluation de la SLime.

Malheureusement, lorsque j'ai fait des erreurs (parce que j'apprends toujours Lisp: P) Le débogueur de la SLIME me met en garde et cela fait cela, il apparaît dans la fenêtre inférieure qui est redimensionnée automatiquement. Juste pour être plus explicite:

Avant: xxx

après: xxx

Comment puis-je Empêcher les emacs redimensionnant mes fenêtres? Je veux que Emacs laissent la taille de ma fenêtre la même.

Comment puis-je accomplir cela?

Merci! Au revoir!

alfredo


2 commentaires

Remarque: un utilisateur Emacs Du-dur aurait dessiné à l'aide de M-X Artist . : P


Wow ... Mode artiste ... Je n'avais aucune idée d'un tel petit jouet très soigné était intégré à Emacs ... merci Trey!


6 Réponses :


8
votes

Vous pouvez vous souvenir de la configuration de votre fenêtre à l'aide de la commande M-x Fenêtre-Configuration-Configuration-to-Register (ou C-X R W) au début.

Après que vous puissiez toujours restaurer vos configurations à l'aide de M-X SUPP-TO-enregistrer (ou C-X R J).


1 commentaires

Merci à tout le monde, c'est le plus proche de la chose que je cherchais. Je ne peux pas utiliser en mode gagnant en raison de la Conférabilité avec la CEB (navigateur de code EMACS), mais la configuration de fenêtre-to-registre obtenez le travail sale effectué :)



4
votes

Si un code que vous appelez modifie la configuration de la fenêtre que vous pouvez Enveloppez votre code avec (Body Save-Window-Excursion ...)

S'il s'agit du débogueur qui change la configuration - Hit "Q" et que l'ancienne configuration sera découste.

Si vous souhaitez que le débogueur ne modifie pas la taille, essayez d'ajouter un crochet de mode de débogueur pour restaurer la taille de votre fenêtre.


0 commentaires

5
votes

Malheureusement, la commande principale pop-to-tamper , qui est utilisée par presque tous les programmes de EMACS pour passer à un tampon dans une fenêtre différente, a l'effet secondaire que vous avez décrit.

Initier à toutes les autres solutions jusqu'à présent, il existe un mode gagnant pour annuler / redo Toute modification de la configuration de la fenêtre, à tout moment de la durée.


0 commentaires

2
votes

mode gagnant code> est une vie de sauvetage, mais pour faire pop-to-tamper code> ne redimensionne pas la fenêtre en premier lieu, faites

(setq even-window-heights nil)


0 commentaires

1
votes

Pour désactiver la fenêtre Rétrécissement de la fenêtre, Rétractable-Window-If-plus grand que tampon doit être un non-OP. Vous pouvez simplement le redéfinir pour ne rien faire, mais si vous le conseillez, vous avez la possibilité de l'activer et de le désactiver à volonté. XXX

Vous pouvez conseiller d'autres fonctions qui appellent rétrécir fenêtre-if-plus grande que tamper pour activer ou désactiver la rétrécissement: xxx

J'ai eu un ancien morceau de code qui était essentiellement ce qui était ce qui précède, et j'avais ignorer-erreurs enveloppé sur (appliquer origici arguments) pour une raison oubliée, mais ce n'est probablement pas nécessaire universellement.

NB Cela utilise le nouvel API de conseil, qui a été ajouté à EMACS 24.4. L'ancien conseil API peut faire la même chose avec une syntaxe différente si vous devez utiliser une ancienne version EMACS.


0 commentaires

0
votes

Définir la variable "True-Inhibit-implici-implicite" à "true" [ 1 ], via le fichier de configuration (~ / .emacs, etc.):

(Variables sur mesure '(Frame-inhibit-implied-redimensionnement t))

ou via l'interface graphique avec:

Options> Personnaliser EMACS> Option spécifique> "Menu de valeur" Inhibit-Inhibit-implici-implicite ">" Toujours "et appliquer et enregistrer

Dans le cas de la dernière méthode, l'état "State" dans "Personnaliser l'option: trame inhibit" La mémoire tampon implicite devrait indiquer "enregistré et défini", par opposition à "standard".


de [ 1 ]:

"Si {inhibition de la trame inhibit} est nulle, la police de réglage, la barre de menu, la barre d'outils, les bordures internes, les franges ou les barres de défilement d'un cadre spécifique peuvent redimensionner le cadre afin de préserver le nombre de colonnes ou de lignes qu'il affiche . Si cette option est t, aucun tel redimensionnement n'est effectué. (..) "


0 commentaires