Emacs vergrößern / verkleinern

86

Gibt es eine Möglichkeit, Emacs zu vergrößern und zu verkleinern (die Schriftgröße dynamisch zu ändern, ganz reibungslos)?

sawa
quelle
1
Funktioniert auch auf Emacs 24
Matt

Antworten:

137

Versuchen Sie C-x C-+und C-x C--; das heißt, Control- x Control- Minus/ Control- Plus.

Nach einer Kombination ( C-x C-+oder C-x C--) nacheinander +oder -erhöhen oder verringern Sie die Textskala, ohne C-x C-erneut zu tippen .

Zugabe durch sawa

Ich habe die Funktion nachgeschlagen, die den genannten Tasten zugewiesen wurde, und festgestellt, dass es sich um text-scale-increaseund handelt text-scale-decrease. Ich habe meiner Konfigurationsdatei Folgendes hinzugefügt, damit ich Ctrl+ Scrollvergrößern / verkleinern kann. Es ist nützlich.

(global-set-key [C-mouse-4] 'text-scale-increase)
(global-set-key [C-mouse-5] 'text-scale-decrease)
sawa
quelle
Danke, es hat geholfen. Ich werde versuchen, das dem Scrollrad (möglicherweise mit Strg) der Maus zuzuweisen.
Sawa
2
Sie können auch anrufen, (text-scale-set LEVEL)wenn Sie im Voraus wissen, was Sie wollen. Zum Beispiel benutze ich dies, um die Schriftgröße in ibuffer standardmäßig zu reduzieren:(add-hook 'ibuffer-mode-hook 'my-ibuffer-mode-hook) (defun my-ibuffer-mode-hook () (text-scale-set -1))
phils
Zum reibungslosen Vergrößern und Verkleinern kann ich die Funktionen verwenden, die nvm mir mitteilt. Für verschiedene Anzeigemodi funktionieren Phils möglicherweise gut.
Sawa
3
Irgendwie funktioniert (global-set-key (kbd "C-<wheel-up>") 'text-scale-increase) (global-set-key (kbd "C-<wheel-down>") 'text-scale-decrease)
Sawas
Es scheint, dass das minusvon den Schreibmaschinentasten sein muss, nicht von der Zehnertastatur.
Viesturs
8

Die sehr nette Antwort von user173973 bindet die Funktionen an nicht generische Mausereignisse. Das heißt, dass beispielsweise auf meinem Windows-System der Bindungsbefehl nicht gültig ist.

Um es unter Windows (oder wahrscheinlich überall) zu verwenden, können Sie diese generischen Bindungen verwenden:

(global-set-key [C-mouse-wheel-up-event]  'text-scale-increase)
(global-set-key  [C-mouse-wheel-down-event] 'text-scale-decrease)
Peter
quelle
Das funktioniert bei mir auch nicht (setq w32-pass-extra-mouse-buttons-to-system t). Irgendwelche Ideen? (Ich bin auf Windows 7.)
Brady Trainor
2
Ich habe es jetzt, von Xah Lees Blog, mit dem ich Erfolg habe (kbd "<C-wheel-up>"). Beschreiben Sie insbesondere den Schlüssel mit C-h k ctrl+scroll-up.
Brady Trainor
Für mich (unter Unix) funktioniert das nicht. Nur die Antwort von @sawa funktioniert.
Bastian
1

Diese Konfiguration hat bei mir funktioniert:

(global-set-key [C-wheel-up] 'text-scale-increase)
(global-set-key [C-wheel-down] 'text-scale-decrease)
Stacksys
quelle
Das [C-Wheel-Up] -Event hat auch für mich funktioniert. Ich fand [CS-Wheel-Up] jedoch vorsichtiger, da es nicht bereits standardmäßig zugewiesen ist.
rm-rf