Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Mail Systems
Eclipse Documentation

How To Guides
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Problem Solutions
Privacy Policy




Next: , Up: Init File

57.6.1 Init File Syntax

The .emacs file contains one or more Lisp function call 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 (see 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 are written in decimal, with an optional initial minus sign.
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 Control-Meta-A.

If you want to include non-ASCII characters in strings in your init file, you should consider putting a ‘-*-coding: coding-system-*-’ tag on the first line which states the coding system used to save your .emacs, as explained in Recognize Coding. This is because the defaults for decoding non-ASCII text might not yet be set up by the time Emacs reads those parts of your init file which use such strings, possibly leading Emacs to decode those strings incorrectly.

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.

See Non-ASCII Rebinding, for information about binding commands to keys which send non-ASCII characters.

t stands for `true'.
nil stands for `false'.
Other Lisp objects:
Write a single-quote (') followed by the Lisp object you want.

  Published under the terms of the GNU General Public License Design by Interspire