C.8 Options for Window Size and Position
Here is a list of the command-line options for specifying size and position of the initial Emacs frame:
‘ -g widthxheight[{+-}xoffset{+-}yoffset]]
’ ¶‘ --geometry=widthxheight[{+-}xoffset{+-}yoffset]]
’
Specify the size width and height (measured in character columns and lines), and positions xoffset and yoffset (measured in pixels). The width and height parameters apply to all frames, whereas xoffset and yoffset only to the initial frame.
‘ -fs
’ ¶‘ --fullscreen
’
Specify that width and height should be that of the screen. Normally
no window manager decorations are shown. (After starting Emacs,
you can toggle this state using F11
, toggle-frame-fullscreen
.)
‘ -mm
’ ¶‘ --maximized
’
Specify that the Emacs frame should be maximized. This normally
means that the frame has window manager decorations.
(After starting Emacs, you can toggle this state using M-F10
,
toggle-frame-maximized
.)
‘ -fh
’ ¶‘ --fullheight
’
Specify that the height should be the height of the screen.
‘ -fw
’ ¶‘ --fullwidth
’
Specify that the width should be the width of the screen.
In the ‘ --geometry
’ option, {+-}
means either a plus
sign or a minus sign. A plus
sign before xoffset means it is the distance from the left side of
the screen; a minus sign means it counts from the right side. A plus
sign before yoffset means it is the distance from the top of the
screen, and a minus sign there indicates the distance from the bottom.
The values xoffset and yoffset may themselves be positive or
negative, but that doesn’t change their meaning, only their direction.
Emacs uses the same units as xterm
does to interpret the geometry.
The width and height are measured in characters, so a large font
creates a larger frame than a small font. (If you specify a proportional
font, Emacs uses its maximum bounds width as the width unit.) The
xoffset and yoffset are measured in pixels.
You do not have to specify all of the fields in the geometry
specification. If you omit both xoffset and yoffset, the
window manager decides where to put the Emacs frame, possibly by
letting you place it with the mouse. For example, ‘ 164x55
’
specifies a window 164 columns wide, enough for two ordinary width
windows side by side, and 55 lines tall.
The default frame width is 80 characters and the default height is
between 35 and 40 lines, depending on the OS and the window manager.
You can omit either the width or the height or both. If you start the
geometry with an integer, Emacs interprets it as the width. If you
start with an ‘ x
’ followed by an integer, Emacs interprets it as
the height. Thus, ‘ 81
’ specifies just the width; ‘ x45
’
specifies just the height.
If you start the geometry with ‘ +
’ or ‘ -
’, that introduces
an offset, which means both sizes are omitted. Thus, ‘ -3
’
specifies the xoffset only. (If you give just one offset, it is
always xoffset.) ‘ +3-3
’ specifies both the xoffset
and the yoffset, placing the frame near the bottom left of the
screen.
You can specify a default for any or all of the fields in your X
resource file (see X Resources), and then override selected fields
with a ‘ --geometry
’ option.
Since the mode line and the echo area occupy the last 2 lines of the frame, the height of the initial text window is 2 less than the height specified in your geometry. In non-X-toolkit versions of Emacs, the menu bar also takes one line of the specified number. But in the X toolkit version, the menu bar is additional and does not count against the specified height. The tool bar, if present, is also additional.
Enabling or disabling the menu bar or tool bar alters the amount of space available for ordinary text. Therefore, if Emacs starts up with a tool bar (which is the default), and handles the geometry specification assuming there is a tool bar, and then your initialization file disables the tool bar, you will end up with a frame geometry different from what you asked for. To get the intended size with no tool bar, use an X resource to specify “no tool bar” (see Table of X Resources for Emacs); then Emacs will already know there’s no tool bar when it processes the specified geometry.
When using one of ‘ --fullscreen
’, ‘ --maximized
’,
‘ --fullwidth
’ or ‘ --fullheight
’, some window managers require
you to set the variable frame-resize-pixelwise
to a non- nil
value to make a frame appear truly maximized or full-screen.
Some window managers have options that can make them ignore both program-specified and user-specified positions. If these are set, Emacs fails to position the window correctly.