Spec-Zone.ru › Elisp

Создание фреймов

Для создания нового фрейма вызовите функцию make-frame.

Команда: make-frame &опциональные параметры

Эта функция создаёт и возвращает новый фрейм, отображая текущий буфер.

Аргумент parameters — это список, который определяет параметры фрейма для нового фрейма. См. Параметры фрейма. Если вы укажете параметр terminal в parameters, новый фрейм будет создан на этом терминале. В противном случае, если вы укажете параметр window-system фрейма в parameters, это определит, должен ли фрейм отображаться на текстовом терминале или графическом терминале. См. Системы окон. Если ни один из них не указан, новый фрейм создаётся в том же терминале, что и выбранный фрейм.

Любые параметры, не упомянутые в parameters, по умолчанию принимают значения в списке default-frame-alist (см. Начальные параметры); параметры, не указанные там, по умолчанию берутся из ресурсов X или их аналогов в вашей операционной системе (см. Ресурсы X в Руководстве по GNU Emacs). После создания фрейма эта функция применяет любые параметры, указанные в frame-inherited-parameters (см. ниже), если им ещё не было присвоено значение, беря значения из фрейма, который был выбран при вызове make-frame.

Обратите внимание, что на многомониторных дисплеях (см. Множественные терминалы) менеджер окон может расположить фрейм иначе, чем указано позиционными параметрами в parameters (см. Параметры позиционирования). Например, некоторые менеджеры окон имеют политику отображения фрейма на мониторе, содержащем большую часть окна (также известный как доминирующий монитор).

Сама функция не делает новый фрейм выбранным. См. Фокус ввода. Предыдущий выбранный фрейм остаётся выбранным. Однако на графических терминалах система окон может выбрать новый фрейм по своим причинам.

Переменная: before-make-frame-hook

Нормальный обработчик, запускаемый make-frame перед созданием фрейма.

Переменная: after-make-frame-functions

Ненормальный обработчик, запускаемый make-frame после создания фрейма. Каждая функция в after-make-frame-functions получает один аргумент — только что созданный фрейм.

Обратите внимание, что любые функции, добавленные в эти обработчики вашим исходным файлом, обычно не запускаются для начального фрейма, поскольку Emacs читает исходный файл только после создания этого фрейма. Однако, если начальный фрейм задан для использования отдельного фрейма минибуфера (см. Минибуферы и фреймы), функции будут выполняться для обоих: фрейма без минибуфера и фрейма минибуфера.

Переменная: frame-inherited-parameters

Эта переменная определяет список параметров фрейма, которые новый созданный фрейм наследует от текущего выбранного фрейма. Для каждого параметра (символ), который является элементом в этом списке и которому ранее не было присвоено значение при обработке make-frame, функция устанавливает значение этого параметра в созданном фрейме в его значение в выбранном фрейме.

Опция пользователя: server-after-make-frame-hook

Нормальный обработчик, запускаемый, когда сервер Emacs создаёт фрейм клиента. Когда этот обработчик вызывается, созданный фрейм является выбранным. См. Сервер Emacs в Руководстве по GNU Emacs.

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/Creating-Frames.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API