Минибуферы и фреймы
Обычно каждый фрейм имеет собственное окно минибуфера внизу, которое используется при выборе этого фрейма. Вы можете получить это окно с помощью функции %%%CODE_BLOCK_0%% (см. Окна минибуфера).
Однако вы также можете создать фрейм без минибуфера. Такой фрейм должен использовать окно минибуфера другого фрейма. Этот другой фрейм будет выступать в качестве заместительного фрейма минибуфера для этого фрейма и не может быть удален с помощью delete-frame (см. Удаление фреймов), пока этот фрейм активен.
При создании фрейма вы можете явно указать его окно минибуфера (в другом фрейме) с параметром фрейма minibuffer (см. Параметры буфера). Если вы этого не сделаете, то минибуфер будет найден в фрейме, который является значением переменной default-minibuffer-frame. Его значение должно быть фреймом, имеющим минибуфер.
Если вы используете фрейм только с минибуфером, вам может понадобиться, чтобы этот фрейм поднимался при вводе в минибуфер. В таком случае установите переменную minibuffer-auto-raise в значение t. См. Поднятие и опускание.
- Переменная: default-minibuffer-frame
Эта переменная по умолчанию указывает фрейм, используемый для окна минибуфера. Она не влияет на существующие фреймы. Она всегда локальна для текущего терминала и не может быть локальной для буфера. См. Множественные терминалы.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Minibuffers-and-Frames.html