Вопрос

Я недавно добавил линию

(set-default-font "-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-1")

в мой файл .emacs. После того find-file-other-window Всегда открывает новое окно вместо использования существующих окон. Зачем это случиться!? Как я могу это исправить?

Я не понимаю, как работает вся эта магия Font-Config, поэтому, если это действительно очевидно, мне жаль.

РЕДАКТИРОВАТЬ: У меня довольно большое разрешение, и мой размер шрифта значительно снизился. Делает find-file-other-window Принять во внимание доступное пространство персонажей? Возможно, это решает, что есть ооочень много места, которое он может позволить себе просто открыть окна Willy Olly.

Это было полезно?

Решение

find-file-other-window в конечном итоге звонит display-buffer, который запускает сложный алгоритм, чтобы решить, следует ли повторно использовать существующее окно или сделать его и как. В частности, если display-buffer решает, что ему нужно создавать или переработать окно, он пытается позвонить split-window-preferred-function Разделите самое большое окно. По умолчанию, split-window-preferred-function является split-window-sensibly, который готов вертикально разделить Windows, если они больше, чем split-height-threshold линии высокого или сбой в горизонтали, если они больше, чем split-width-threshold колонны широко.

Похоже, ты хочешь

(setq split-width-threshold nil)
(setq split-height-threshold nil)

NB Этот ответ применим к GNU EMACS 23. Ранние версии не имели горизонтального расщепления. Более поздние версии могут делать вещи по -другому.


Несколько способов узнать это (нет простой):

  • Если вы предполагаете, что то, что происходит, называется разделением окна: M-x apropos RET split RET Показывает ряд переменных и функций, и вы можете выяснить, какие из них актуальны. Или если вы предполагаете, что есть вариант (часто есть), C-h v split- TAB показывает многообещающие лидеры.
  • А Документация для find-file-other-window использованная литература Отображение буферов. Анкет (Вы должны пойти в руководство Elisp для этого уровня детализации; в Emacs, C-h i m elisp RET поднимает руководство Elisp, и i find-file-other-window RET приводит вас к документации для этой функции.) Менее ясно, что pop-to-buffer это отрывок для чтения там; это ссылки Выбор окна который содержит востребованную информацию.
  • C-h f find-file-other-window RET показывает встроенную документацию для функции. Он ссылается на display-buffer. Анкет Описание display-buffer не описывает его работу подробно, поэтому оттуда вам нужно либо проконсультироваться с руководством ELISP, как указано выше, либо изучить источник display-buffer Нажав window.el.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top