С помощью мыши вы можете перетаскивать размеры окон вокруг.
Щелкните в любом месте строки режима, которая иначе не является «активной» (имя буфера является безопасным, или любая неиспользуемая область справа), и вы можете перетащить вверх или вниз.
Для перетаскивания из стороны в сторону требуется очень точный щелчок в месте соединения двух линий режима.
C-x - (shrink-window-if-larger-than-buffer
) уменьшит окно, чтобы соответствовать его содержимому.
C-x + (balance-windows
) сделает окна одинаковой высоты и ширины.
C-x ^ (enlarge-window
) увеличивает высоту на 1 строку или значение префикса arg. Отрицательный аргумент сжимает окно. например C - C-1 C-6 Cx ^ сжимается на 16 строк, как и Cu - 1 6 Cx ^ .
(Нет привязки по умолчанию для shrink-window
.)
C-x } (enlarge-window-horizontally
) аналогично, горизонтально.
C-x { (shrink-window-horizontally
) также связан по умолчанию.
После выполнения одной из этих команд с помощью repeat
( Cx z для запуска и просто z для продолжения повторения) довольно легко добраться до Точный размер вы хотите.
Если вы регулярно хотите делать это с определенным значением, вы можете записать макрос клавиатуры, чтобы сделать это, или использовать что-то вроде
(global-set-key (kbd "C-c v") (kbd "C-u - 1 6 C-x ^"))
или это:
(global-set-key (kbd "C-c v") (kbd "C-x o C-x 2 C-x 0 C-u - 1 C-x o"))
Какая хакерская smidgen, так что это было бы лучше:
(defun halve-other-window-height ()
"Expand current window to use half of the other window's lines."
(interactive)
(enlarge-window (/ (window-height (next-window)) 2)))
(global-set-key (kbd "C-c v") 'halve-other-window-height)
Тангенциально, мне также нравится winner-mode
, который позволяет вам неоднократно «отменять» любые изменения конфигурации окон с помощью Cc left (независимо от того, является ли изменение размером / числом / расположением окна, или только какой буфер отображается). C-c right возвращает вас к самой последней конфигурации. Установите его глобально с помощью (winner-mode 1)