emacs powiększ / pomniejsz

86

Czy istnieje sposób na powiększanie i pomniejszanie (dynamiczna zmiana rozmiaru czcionki, całkiem płynnie) w emacsie?

sawa
źródło
1
Działa również na emacs 24
Matt

Odpowiedzi:

138

Spróbuj C-x C-+i C-x C--; to znaczy Control- x Control- Minus/ Control- Plus.

Po jednej kombinacji ( C-x C-+lub C-x C--), kolejne +lub -zwiększaj lub zmniejszaj skalę tekstu bez C-x C-ponownego wpisywania .

Dodatek autorstwa sawy

Wyszukałem funkcję przypisaną do wspomnianych klawiszy i stwierdziłem, że są to text-scale-increasei text-scale-decrease. Dodałem do mojego pliku konfiguracyjnego następujące polecenie, dzięki czemu mogę Ctrl+ Scrollpowiększać / pomniejszać. To jest użyteczne.

(global-set-key [C-mouse-4] 'text-scale-increase)
(global-set-key [C-mouse-5] 'text-scale-decrease)
sawa
źródło
Dzięki, pomogło. Spróbuję przypisać to do kółka przewijania (może z Ctrl) na myszy.
sawa
2
Możesz również zadzwonić, (text-scale-set LEVEL)jeśli wiesz z wyprzedzeniem, czego chcesz. Na przykład używam tego, aby domyślnie zmniejszyć rozmiar czcionki w ibuffer:(add-hook 'ibuffer-mode-hook 'my-ibuffer-mode-hook) (defun my-ibuffer-mode-hook () (text-scale-set -1))
phils
Aby płynnie powiększać i pomniejszać, mogę użyć funkcji, które nvm daje mi do zrozumienia. Ze względu na różne tryby wyświetlania phils może działać dobrze.
sawa
3
Jakoś polecenie Sawy w górę / w dół nie działa dla mnie, ale to działa:(global-set-key (kbd "C-<wheel-up>") 'text-scale-increase) (global-set-key (kbd "C-<wheel-down>") 'text-scale-decrease)
jule64
Wygląda na to, że minusmusi pochodzić z klawiszy maszyny do pisania, a nie klawiatury numerycznej.
Viesturs
8

-Bardzo ładna- odpowiedź użytkownika173973 wiąże funkcje z nietypowymi zdarzeniami myszy. Oznacza to, że na przykład w moim systemie Windows polecenie powiązania jest nieprawidłowe.

Aby użyć go w systemie Windows (lub prawdopodobnie gdziekolwiek), możesz użyć tych ogólnych powiązań:

(global-set-key [C-mouse-wheel-up-event]  'text-scale-increase)
(global-set-key  [C-mouse-wheel-down-event] 'text-scale-decrease)
Piotr
źródło
To nie działa dla mnie, nawet z (setq w32-pass-extra-mouse-buttons-to-system t). Jakieś pomysły? (Jestem na Windows 7.)
Brady Trainor
2
Mam to teraz, z bloga Xah Lee, z którym mam sukces (kbd "<C-wheel-up>"). Szczególnie opisz klucz za pomocą C-h k ctrl+scroll-up.
Brady Trainor
U mnie (na unixie) to nie działa. Tylko odpowiedź @sawa działa.
bastian
1

Ta konfiguracja zadziałała dla mnie:

(global-set-key [C-wheel-up] 'text-scale-increase)
(global-set-key [C-wheel-down] 'text-scale-decrease)
Stacksys
źródło
Wydarzenie [C-wheel-up] też zadziałało. Jednak uważam, że [CS-wheel-up] jest ostrożniejsze, ponieważ nie jest już przypisane domyślnie.
rm -rf