emacs: Init Syntax
51.4.1 Init File Syntax
-----------------------
The init file contains one or more Lisp expressions. Each of these
consists of a function name followed by arguments, all surrounded by
parentheses. For example, ‘(setq fill-column 60)’ calls the function
‘setq’ to set the variable ‘fill-column’ (Filling) to 60.
You can set any Lisp variable with ‘setq’, but with certain variables
‘setq’ won’t do what you probably want in the ‘.emacs’ file. Some
variables automatically become buffer-local when set with ‘setq’; what
you want in ‘.emacs’ is to set the default value, using ‘setq-default’.
Some customizable minor mode variables do special things to enable the
mode when you set them with Customize, but ordinary ‘setq’ won’t do
that; to enable the mode in your ‘.emacs’ file, call the minor mode
command. The following section has examples of both of these methods.
The second argument to ‘setq’ is an expression for the new value of
the variable. This can be a constant, a variable, or a function call
expression. In ‘.emacs’, constants are used most of the time. They can
be:
Numbers:
Numbers are written in decimal, with an optional initial minus
sign.
Strings:
Lisp string syntax is the same as C string syntax with a few extra
features. Use a double-quote character to begin and end a string
constant.
In a string, you can include newlines and special characters
literally. But often it is cleaner to use backslash sequences for
them: ‘\n’ for newline, ‘\b’ for backspace, ‘\r’ for carriage
return, ‘\t’ for tab, ‘\f’ for formfeed (control-L), ‘\e’ for
escape, ‘\\’ for a backslash, ‘\"’ for a double-quote, or ‘\OOO’
for the character whose octal code is OOO. Backslash and
double-quote are the only characters for which backslash sequences
are mandatory.
‘\C-’ can be used as a prefix for a control character, as in ‘\C-s’
for ASCII control-S, and ‘\M-’ can be used as a prefix for a Meta
character, as in ‘\M-a’ for ‘<META>-A’ or ‘\M-\C-a’ for
‘<Ctrl>-<META>-A’.
Init Non-ASCII, for information about including non-ASCII
in your init file.
Characters:
Lisp character constant syntax consists of a ‘?’ followed by either
a character or an escape sequence starting with ‘\’. Examples:
‘?x’, ‘?\n’, ‘?\"’, ‘?\)’. Note that strings and characters are
not interchangeable in Lisp; some contexts require one and some
contexts require the other.
Init Non-ASCII, for information about binding commands to
keys which send non-ASCII characters.
True:
‘t’ stands for “true”.
False:
‘nil’ stands for “false”.
Other Lisp objects:
Write a single-quote (‘'’) followed by the Lisp object you want.