[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Programs running under the X Window System organize their user options under a hierarchy of classes and resources. You can specify default values for these options in your X resources file, usually named `~/.Xdefaults'.
Each line in the file specifies a value for one option or for a collection of related options, for one program or for several programs (optionally even for all programs).
MS-Windows systems don't support `~/.Xdefaults' files, but Emacs compiled for Windows looks for X resources in the Windows Registry, under the keys `HKEY_CURRENT_USER\SOFTWARE\GNU\Emacs' and `HKEY_LOCAL_MACHINE\SOFTWARE\GNU\Emacs'.
Programs define named resources with particular meanings. They also define how to group resources into named classes. For instance, in Emacs, the `internalBorder' resource controls the width of the internal border, and the `borderWidth' resource controls the width of the external border. Both of these resources are part of the `BorderWidth' class. Case distinctions are significant in these names.
In `~/.Xdefaults', you can specify a value for a single resource on one line, like this:
emacs.borderWidth: 2 |
Or you can use a class name to specify the same value for all resources in that class. Here's an example:
emacs.BorderWidth: 2 |
If you specify a value for a class, it becomes the default for all resources in that class. You can specify values for individual resources as well; these override the class value, for those particular resources. Thus, this example specifies 2 as the default width for all borders, but overrides this value with 4 for the external border:
emacs.BorderWidth: 2 emacs.borderWidth: 4 |
The order in which the lines appear in the file does not matter. Also, command-line options always override the X resources file.
The string `emacs' in the examples above is also a resource name. It actually represents the name of the executable file that you invoke to run Emacs. If Emacs is installed under a different name, it looks for resources under that name instead of `emacs'.
If you don't specify this option, the default is to use the Emacs executable's name as the resource name.
For consistency, `-name' also specifies the name to use for other resource values that do not belong to any particular frame.
The resources that name Emacs invocations also belong to a class; its name is `Emacs'. If you write `Emacs' instead of `emacs', the resource applies to all frames in all Emacs jobs, regardless of frame titles and regardless of the name of the executable file. Here is an example:
Emacs.BorderWidth: 2 Emacs.borderWidth: 4 |
You can specify a string of additional resource values for Emacs to use with the command line option `-xrm resources'. The text resources should have the same format that you would use inside a file of X resources. To include multiple resource specifications in resources, put a newline between them, just as you would in a file. You can also use `#include "filename"' to include a file full of resource specifications. Resource values specified with `-xrm' take precedence over all other resource specifications.
The following table lists the resource names that designate options for Emacs, each with the class that it belongs to:
background
(class Background
)
bitmapIcon
(class BitmapIcon
)
borderColor
(class BorderColor
)
borderWidth
(class BorderWidth
)
cursorColor
(class Foreground
)
font
(class Font
)
foreground
(class Foreground
)
geometry
(class Geometry
)
If this resource specifies a position, that position applies only to the initial Emacs frame (or, in the case of a resource for a specific frame name, only that frame). However, the size, if specified here, applies to all frames.
iconName
(class Title
)
internalBorder
(class BorderWidth
)
lineSpacing
(class LineSpacing
)
menuBar
(class MenuBar
)
toolBar
(class ToolBar
)
auto-resize-tool-bars
is non-nil
, the tool bar's size
will be changed automatically so that all tool bar items are visible.
minibuffer
(class Minibuffer
)
paneFont
(class Font
)
pointerColor
(class Foreground
)
reverseVideo
(class ReverseVideo
)
screenGamma
(class ScreenGamma
)
screen-gamma
.
selectionFont
(class Font
)
synchronous
(class Synchronous
)
title
(class Title
)
verticalScrollBars
(class ScrollBars
)
Here are resources for controlling the appearance of particular faces (see section J.1 Using Multiple Typefaces):
face.attributeFont
face.attributeForeground
face.attributeBackground
face.attributeUnderline
face.attributeFamily
face.attributeWidth
ultra-condensed
, extra-condensed
,
condensed
, semi-condensed
, normal
,
semi-expanded
, expanded
, extra-expanded
, or
ultra-expanded
.
face.attributeHeight
face.attributeWeight
ultra-bold
, extra-bold
, bold
,
semi-bold
, normal
, semi-light
, light
,
extra-light
, ultra-light
.
face.attributeSlant
italic
, oblique
, normal
,
reverse-italic
, or reverse-oblique
.
face.attributeStrikeThrough
face.attributeOverline
face.attributeBox
face.attributeInverse
face.attributeStipple
false
to not use stipple for the face face.
face.attributeBackgroundPixmap
false
.
face.attributeBold
face.attributeItalic
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |