All the Emacs commands which parse words or balance parentheses are
controlled by the @dfn{syntax table}. The syntax table says which
characters are opening delimiters, which are parts of words, which are
-string quotes, and so on. Each major mode has its own syntax table
-(though sometimes related major modes use the same one) which it
-installs in each buffer that uses that major mode. The syntax table
-installed in the current buffer is the one that all commands use, so we
-call it ``the'' syntax table. A syntax table is a Lisp object, a
-char-table, whose elements are numbers.
+string quotes, and so on. It does this by assigning each character to
+one of fifteen-odd @dfn{syntax classes}. In some cases it specifies
+some additional information also.
+
+ Each major mode has its own syntax table (though sometimes related
+major modes share one syntax table) which it installs in each buffer
+that uses the mode. The syntax table installed in the current buffer
+is the one that all commands use, so we call it ``the'' syntax table.
@kindex C-h s
@findex describe-syntax
- To display a description of the contents of the current syntax table,
-type @kbd{C-h s} (@code{describe-syntax}). The description of each
-character includes both the string you would have to give to
+ To display a description of the contents of the current syntax
+table, type @kbd{C-h s} (@code{describe-syntax}). The description of
+each character includes both the string you would have to give to
@code{modify-syntax-entry} to set up that character's current syntax,
-and some English to explain that string if necessary.
+starting with the character which designates its syntax class, plus
+some English text to explain its meaning.
- For full information on the syntax table, see @ref{Syntax Tables,,
-Syntax Tables, elisp, The Emacs Lisp Reference Manual}.
+ A syntax table is actually a Lisp object, a char-table, whose
+elements are cons cells. For full information on the syntax table,
+see @ref{Syntax Tables,, Syntax Tables, elisp, The Emacs Lisp
+Reference Manual}.
@node Init File
@section The Init File, @file{~/.emacs}