Параметры размера
Параметры кадра обычно задают размеры кадра в символьных единицах. На графических дисплеях гарнитура default определяет фактический размер этих символьных единиц в пикселях (см. Атрибуты гарнитуры). На текстовых терминалах параметры размера влияют только на дочерние кадры.
-
width -
Этот параметр задаёт ширину кадра. Её можно задать следующими способами:
- целое число
-
Положительное целое число задаёт ширину текстовой области кадра (см. Геометрия кадра) в символах.
- cons-ячейка
-
Если это cons-ячейка, в CAR которой находится символ
text-pixels, то CDR этой ячейки задаёт ширину текстовой области кадра в пикселях. - число с плавающей точкой
-
Для задания ширины кадра можно использовать число с плавающей точкой от 0.0 до 1.0, указывающее отношение ширины — отношение внешней ширины кадра (см. Геометрия кадра) к ширине рабочей области кадра (см. Несколько терминалов) или родительского кадра (см. Дочерние кадры). Таким образом, значение 0.5 заставляет кадр занимать половину ширины рабочей области или родительского кадра, а значение 1.0 — всю ширину. Аналогично, отношение высоты кадра — это отношение его внешней высоты к высоте рабочей области или собственного кадра родителя.
Emacs постарается сохранить неизменными отношения ширины и высоты дочернего кадра, если у этого кадра задан параметр
nilkeep-ratio(см. Параметры взаимодействия с кадром) и размер его родительского кадра изменён.Поскольку внешний размер кадра обычно неизвестен, пока кадр не станет видимым, при создании декорированных кадров, как правило, не рекомендуется использовать числа с плавающей точкой. Такие числа лучше подходят для того, чтобы дочерний кадр всегда помещался в области родительского кадра, например при настройке
display-buffer-alist(см. Выбор окна для отображения буфера) с помощьюdisplay-buffer-in-child-frame.
Независимо от способа задания этого параметра функции, возвращающие его значение, например
frame-parameters, всегда сообщают ширину текстовой области кадра в символах в виде целого числа, при необходимости округлённого до ближайшего числа, кратного ширине символа по умолчанию для данного кадра. Это значение также используется функциями сохранения рабочего стола. -
height -
Этот параметр задаёт высоту кадра. Он работает так же, как
width, но задаёт вертикальный, а не горизонтальный размер. -
user-size -
Этот параметр выполняет для параметров размера
heightиwidthто же, что параметрuser-position(см. user-position) для параметров положенияtopиleft. На текстовом терминале этот параметр не имеет значения. -
min-width -
Этот параметр задаёт минимальную собственную ширину кадра (см. Геометрия кадра) в символах. Обычно функции, задающие начальную ширину кадра или изменяющие его ширину, проверяют, что все окна кадра, вертикальные полосы прокрутки, боковые поля, поля и вертикальные разделители могут быть отображены. Если параметр задан и не равен
nil, он позволяет сделать кадр уже, из-за чего оконный менеджер обрежет компоненты, которые не помещаются. -
min-height -
Этот параметр задаёт минимальную собственную высоту кадра (см. Геометрия кадра) в символах. Обычно функции, задающие начальный размер кадра или изменяющие его размер, проверяют, что все окна кадра, горизонтальные полосы прокрутки и разделители, строки режимов и заголовков, область эха, а также встроенные меню и панель инструментов могут быть отображены. Если параметр задан и не равен
nil, он позволяет сделать кадр меньше, из-за чего оконный менеджер обрежет компоненты, которые не помещаются. -
fullscreen -
Этот параметр указывает, следует ли развернуть кадр по ширине, высоте или в обоих направлениях. На текстовом терминале он не имеет значения. Его значение может быть
fullwidth,fullheight,fullbothилиmaximized. Кадр на всю ширину имеет максимально возможную ширину, кадр на всю высоту — максимально возможную высоту, а кадр на весь экран максимально широк и высок. Развёрнутый кадр похож на кадр «на весь экран», но обычно сохраняет строку заголовка и кнопки изменения размера и закрытия кадра. Кроме того, развёрнутые кадры обычно не скрывают панель задач или панели, отображаемые на рабочем столе. Кадр «на весь экран», напротив, обычно не имеет строки заголовка и занимает всё доступное пространство экрана.В этом отношении полноэкранные кадры на всю высоту и на всю ширину больше похожи на развёрнутые. Однако у них обычно отображается внешняя рамка, которая может отсутствовать у развёрнутых кадров. Поэтому высота развёрнутых кадров и кадров на всю высоту, а также ширина развёрнутых кадров и кадров на всю ширину часто различаются на несколько пикселей.
В некоторых оконных менеджерах для того, чтобы кадр действительно отображался развёрнутым или полноэкранным, может потребоваться настроить переменную
frame-resize-pixelwise(см. Размер кадра). Кроме того, некоторые оконные менеджеры могут не поддерживать плавный переход между различными полноэкранными состояниями или состояниями развёртывания. Настройка переменнойx-frame-normalize-before-maximizeможет помочь решить эту проблему.В macOS полноэкранный режим скрывает и панель инструментов, и строку меню, однако обе они отображаются, если переместить указатель мыши к верхнему краю экрана.
-
fullscreen-restore -
Этот параметр задаёт желаемое полноэкранное состояние кадра после вызова команды
toggle-frame-fullscreen(см. Команды для работы с кадрами в Руководстве GNU Emacs) в состоянии «fullboth». Обычно эта команда автоматически устанавливает данный параметр при переключении в состояние fullboth. Однако если вы запускаете Emacs в состоянии «fullboth», то желаемое поведение нужно указать в начальном файле, например так:(setq default-frame-alist '((fullscreen . fullboth) (fullscreen-restore . fullheight)))После этого новый кадр будет занимать всю высоту экрана, если при первом вводе в него нажать F11. На текстовом терминале этот параметр не имеет значения.
-
fit-frame-to-buffer-margins -
Этот параметр позволяет переопределить значение параметра
fit-frame-to-buffer-marginsпри подгонке этого кадра под буфер его корневого окна с помощьюfit-frame-to-buffer(см. Изменение размеров окон). -
fit-frame-to-buffer-sizes Этот параметр позволяет переопределить значение параметра
fit-frame-to-buffer-sizesпри подгонке этого кадра под буфер его корневого окна с помощьюfit-frame-to-buffer(см. Изменение размеров окон).
Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Size-Parameters.html