annotate lispref/vol1.texi @ 49393:85246e86a2cd

* w32term.c (x_draw_glyph_string_foreground) (x_draw_composite_glyph_string_foreground): Implement overstriking. * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current phys_cursor's hpos is overwritten. This is still not completely correct, as it doesn't really make sense to use hpos at all to get the cursor glyph (as that is relative to the width of the characters on the line, which may have changed during the update). * w32term.c (notice_overwritten_cursor): Handle the special case of the cursor being in the first blank non-text line at the end of a window. * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor) (x_draw_phys_cursor_glyph): Set phys_cursor_width here. Compute from the x position returned by x_draw_glyphs. * w32term.c (note_mode_line_or_margin_highlight): Renamed from note_mode_line_highlight and extended. * w32term.c (last_window): New variable. (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs. (note_mouse_movement): Remove reimplemented code in #if 0.
author Jason Rumney <jasonr@gnu.org>
date Wed, 22 Jan 2003 23:04:05 +0000
parents 4aa3364dbf8e
children 23a1cea22d13
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
41130
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1 \input texinfo @c -*-texinfo-*-
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
2 @c %**start of header
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
3 @setfilename elisp
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
4 @settitle GNU Emacs Lisp Reference Manual: Volume 1
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
5 @smallbook
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
6 @c %**end of header
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
7
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
8
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
9 @tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
10 %%%% Experiment with smaller skip before sections and subsections.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
11 %%%% --rjc 30mar92
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
12
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
13 \global\secheadingskip = 17pt plus 6pt minus 3pt
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
14 \global\subsecheadingskip = 14pt plus 6pt minus 3pt
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
15
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
16 % The defaults are:
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
17 % \secheadingskip = 21pt plus 8pt minus 4pt
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
18 % \subsecheadingskip = 17pt plus 8pt minus 4pt
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
19 @end tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
20
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
21 @finalout
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
22 @c tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
23 @c \overfullrule=0pt
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
24 @c end tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
25
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
26 @c Start volume 1 chapter numbering on chapter 1;
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
27 @c this must be listed as chapno 0.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
28 @tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
29 \global\chapno=0
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
30 @end tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
31
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
32 @c ================================================================
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
33 @c Note: I was unable to figure out how to get .aux files copied
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
34 @c properly in the time I had. Hence need to copy .aux file before
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
35 @c running Tex. --rjc
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
36
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
37 @tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
38
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
39 \message{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
40 \message{Redefining contents commands...}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
41 \message{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
42
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
43 % Special @contents command
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
44
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
45 % This inputs fixed up table of contents file rather than create new one.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
46 \global\def\contents{%
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
47 \startcontents{Table of Contents}%
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
48 \input elisp1-toc-ready.toc
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
49 \endgroup
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
50 \vfill \eject
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
51 }
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
52
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
53 % Special @summarycontents command
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
54 % This inputs fixed up table of contents file rather than create new one.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
55 \global\def\summarycontents{%
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
56 \startcontents{Short Contents}%
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
57 %
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
58 \let\chapentry = \shortchapentry
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
59 \let\unnumbchapentry = \shortunnumberedentry
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
60 % We want a true roman here for the page numbers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
61 \secfonts
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
62 \let\rm=\shortcontrm \let\bf=\shortcontbf \let\sl=\shortcontsl
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
63 \rm
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
64 \advance\baselineskip by 1pt % Open it up a little.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
65 \def\secentry ##1##2##3##4{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
66 \def\unnumbsecentry ##1##2{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
67 \def\subsecentry ##1##2##3##4##5{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
68 \def\unnumbsubsecentry ##1##2{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
69 \def\subsubsecentry ##1##2##3##4##5##6{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
70 \def\unnumbsubsubsecentry ##1##2{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
71 \input elisp1-toc-ready.toc
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
72 \endgroup
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
73 \vfill \eject
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
74 }
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
75
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
76 \message{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
77 \message{Formatting special two volume edition...Volume 1...}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
78 \message{}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
79 @end tex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
80 @c ================================================================
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
81
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
82
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
83 @c ==> This `elisp-small.texi' is a `smallbook' version of the manual.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
84
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
85 @c ==== Following are acceptable over and underfull hboxes in TeX ====
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
86
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
87 @c -----
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
88 @c [163] [164] [165] [166]) (loading.texi Chapter 13 [167] [168] [169]
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
89 @c Overfull \hbox (20.5428pt too wide) in paragraph at lines 131--131
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
90 @c []@ninett
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
91 @c setenv EMAC-SLOAD-PATH .:/user/bil/emacs:/usr/local/lib/emacs/lisp[]
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
92 @c -----
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
93 @c (minibuf.texi Chapter 17 [206] [207] [208] [209] [210] [211] [212] [213]
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
94 @c [214] [215]
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
95 @c Overfull \hbox (2.09094pt too wide) in paragraph at lines 550--560
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
96 @c @texttt map[] @textrm if @textsl require-match @textrm is
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
97 @c @texttt nil[]@textrm , or else with the keymap @texttt minibuffer-
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
98 @c -----
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
99 @c (locals.texi Appendix @char 68 [533] [534]
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
100 @c Underfull \hbox (badness 2512) in paragraph at lines 4--4
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
101 @c []@chaprm Appendix DStandard Buffer-Local
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
102
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
103 @c -------------------------------------------------------------------
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
104
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
105 @c
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
106 @c Combine indices.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
107 @synindex cp fn
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
108 @syncodeindex vr fn
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
109 @syncodeindex ky fn
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
110 @syncodeindex pg fn
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
111 @syncodeindex tp fn
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
112 @c oops: texinfo-format-buffer ignores synindex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
113 @c
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
114
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
115 @ifinfo
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
116 This file documents GNU Emacs Lisp.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
117
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
118 @c The edition number appears in several places in this file
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
119 @c and also in the file intro.texi.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
120 This is edition 2.4 of the GNU Emacs Lisp Reference
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
121 Manual. It corresponds to Emacs Version 19.29.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
122 @c Please REMEMBER to update edition number in *four* places in this file
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
123 @c and also in *one* place in ==> intro.texi <==
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
124 @c huh? i only found three real places where the edition is stated, and
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
125 @c one place where it is not stated explicitly ("this info file is newer
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
126 @c than the foobar edition"). --mew 13sep93
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
127
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
128 Published by the Free Software Foundation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
129 59 Temple Place, Suite 330
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
130 Boston, MA 02111-1307 USA
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
131
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
132 Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
133
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
134 Permission is granted to make and distribute verbatim copies of this
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
135 manual provided the copyright notice and this permission notice are
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
136 preserved on all copies.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
137
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
138 @ignore
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
139 Permission is granted to process this file through TeX and print the
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
140 results, provided the printed document carries copying permission notice
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
141 identical to this one except for the removal of this paragraph (this
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
142 paragraph not being relevant to the printed manual).
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
143
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
144 @end ignore
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
145 Permission is granted to copy and distribute modified versions of this
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
146 manual under the conditions for verbatim copying, provided that the
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
147 entire resulting derived work is distributed under the terms of a
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
148 permission notice identical to this one.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
149
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
150 Permission is granted to copy and distribute translations of this manual
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
151 into another language, under the above conditions for modified versions,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
152 except that this permission notice may be stated in a translation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
153 approved by the Foundation.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
154
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
155 Permission is granted to copy and distribute modified versions of this
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
156 manual under the conditions for verbatim copying, provided also that the
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
157 section entitled ``GNU General Public License'' is included exactly as
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
158 in the original, and provided that the entire resulting derived work is
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
159 distributed under the terms of a permission notice identical to this
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
160 one.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
161
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
162 Permission is granted to copy and distribute translations of this manual
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
163 into another language, under the above conditions for modified versions,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
164 except that the section entitled ``GNU General Public License'' may be
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
165 included in a translation approved by the Free Software Foundation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
166 instead of in the original English.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
167 @end ifinfo
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
168
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
169 @setchapternewpage odd
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
170
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
171 @iftex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
172 @shorttitlepage The GNU Emacs Lisp Reference Manual: Volume 1
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
173 @end iftex
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
174 @titlepage
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
175 @sp 1
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
176 @center @titlefont{The}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
177 @sp 1
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
178 @center @titlefont{GNU Emacs Lisp}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
179 @sp 1
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
180 @center @titlefont{Reference Manual}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
181 @sp 2
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
182 @center GNU Emacs Version 19.29
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
183 @center for Unix Users
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
184 @sp 1
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
185 @center Edition 2.4, June 1995
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
186 @sp 2
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
187 @center @titlefont{Volume 1}
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
188 @sp 3
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
189 @center by Bil Lewis, Dan LaLiberte,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
190 @center and the GNU Manual Group
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
191 @page
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
192 @vskip 0pt plus 1filll
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
193 Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
194
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
195 @sp 2
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
196 Edition 2.4 @*
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
197 Revised for Emacs Version 19.29,@*
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
198 June, 1995.@*
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
199 @sp 2
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
200 ISBN 1-882114-71-X
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
201
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
202 @sp 2
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
203 Published by the Free Software Foundation @*
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
204 59 Temple Place, Suite 330 @*
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
205 Boston, MA 02111-1307 USA
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
206
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
207 @sp 1
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
208 Permission is granted to make and distribute verbatim copies of this
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
209 manual provided the copyright notice and this permission notice are
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
210 preserved on all copies.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
211
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
212 Permission is granted to copy and distribute modified versions of this
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
213 manual under the conditions for verbatim copying, provided also that the
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
214 section entitled ``GNU General Public License'' is included
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
215 exactly as in the original, and provided that the entire resulting
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
216 derived work is distributed under the terms of a permission notice
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
217 identical to this one.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
218
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
219 Permission is granted to copy and distribute translations of this manual
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
220 into another language, under the above conditions for modified versions,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
221 except that the section entitled ``GNU General Public License'' may be
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
222 included in a translation approved by the Free Software Foundation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
223 instead of in the original English.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
224
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
225 @sp 2
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
226 Cover art by Etienne Suvasa.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
227 @end titlepage
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
228 @page
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
229
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
230 @node Top, Copying, (dir), (dir)
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
231
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
232 @ifinfo
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
233 This Info file contains edition 2.4 of the GNU Emacs Lisp Reference
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
234 Manual, corresponding to GNU Emacs version 19.29.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
235 @end ifinfo
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
236
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
237 @menu
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
238 * Copying:: Conditions for copying and changing GNU Emacs.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
239 * Introduction:: Introduction and conventions used.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
240
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
241 * Lisp Data Types:: Data types of objects in Emacs Lisp.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
242 * Numbers:: Numbers and arithmetic functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
243 * Strings and Characters:: Strings, and functions that work on them.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
244 * Lists:: Lists, cons cells, and related functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
245 * Sequences Arrays Vectors:: Lists, strings and vectors are called sequences.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
246 Certain functions act on any kind of sequence.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
247 The description of vectors is here as well.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
248 * Symbols:: Symbols represent names, uniquely.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
249
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
250 * Evaluation:: How Lisp expressions are evaluated.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
251 * Control Structures:: Conditionals, loops, nonlocal exits.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
252 * Variables:: Using symbols in programs to stand for values.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
253 * Functions:: A function is a Lisp program
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
254 that can be invoked from other functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
255 * Macros:: Macros are a way to extend the Lisp language.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
256
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
257 * Loading:: Reading files of Lisp code into Lisp.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
258 * Byte Compilation:: Compilation makes programs run faster.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
259 * Debugging:: Tools and tips for debugging Lisp programs.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
260
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
261 * Read and Print:: Converting Lisp objects to text and back.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
262 * Minibuffers:: Using the minibuffer to read input.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
263 * Command Loop:: How the editor command loop works,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
264 and how you can call its subroutines.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
265 * Keymaps:: Defining the bindings from keys to commands.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
266 * Modes:: Defining major and minor modes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
267 * Documentation:: Writing and using documentation strings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
268
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
269 * Files:: Accessing files.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
270 * Backups and Auto-Saving:: Controlling how backups and auto-save
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
271 files are made.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
272 * Buffers:: Creating and using buffer objects.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
273 * Windows:: Manipulating windows and displaying buffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
274 * Frames:: Making multiple X windows.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
275 * Positions:: Buffer positions and motion functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
276 * Markers:: Markers represent positions and update
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
277 automatically when the text is changed.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
278
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
279 * Text:: Examining and changing text in buffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
280 * Searching and Matching:: Searching buffers for strings or regexps.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
281 * Syntax Tables:: The syntax table controls word and list parsing.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
282 * Abbrevs:: How Abbrev mode works, and its data structures.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
283
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
284 * Processes:: Running and communicating with subprocesses.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
285 * System Interface:: Getting the user id, system type, environment
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
286 variables, and other such things.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
287 * Display:: Parameters controlling screen usage.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
288 The bell. Waiting for input.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
289 * Calendar:: Customizing the calendar and diary.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
290
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
291 Appendices
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
292
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
293 * Tips:: Advice for writing Lisp programs.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
294 * GNU Emacs Internals:: Building and dumping Emacs;
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
295 internal data structures.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
296 * Standard Errors:: List of all error symbols.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
297 * Standard Buffer-Local Variables:: List of variables local in all buffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
298 * Standard Keymaps:: List of standard keymaps.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
299 * Standard Hooks:: List of standard hook variables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
300
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
301 * Index:: Index including concepts, functions, variables,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
302 and other terms.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
303
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
304 --- The Detailed Node Listing ---
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
305
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
306 Here are other nodes that are inferiors of those already listed,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
307 mentioned here so you can get to them in one step:
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
308
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
309 Introduction
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
310
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
311 * Caveats:: Flaws and a request for help.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
312 * Lisp History:: Emacs Lisp is descended from Maclisp.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
313 * Conventions:: How the manual is formatted.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
314 * Acknowledgements:: The authors, editors, and sponsors of this manual.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
315
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
316 Conventions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
317
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
318 * Some Terms:: Explanation of terms we use in this manual.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
319 * nil and t:: How the symbols @code{nil} and @code{t} are used.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
320 * Evaluation Notation:: The format we use for examples of evaluation.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
321 * Printing Notation:: The format we use for examples that print output.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
322 * Error Messages:: The format we use for examples of errors.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
323 * Buffer Text Notation:: The format we use for buffer contents in examples.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
324 * Format of Descriptions:: Notation for describing functions, variables, etc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
325
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
326 Format of Descriptions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
327
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
328 * A Sample Function Description::
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
329 * A Sample Variable Description::
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
330
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
331 Lisp Data Types
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
332
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
333 * Printed Representation:: How Lisp objects are represented as text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
334 * Comments:: Comments and their formatting conventions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
335 * Programming Types:: Types found in all Lisp systems.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
336 * Editing Types:: Types specific to Emacs.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
337 * Type Predicates:: Tests related to types.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
338 * Equality Predicates:: Tests of equality between any two objects.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
339
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
340 Programming Types
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
341
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
342 * Integer Type:: Numbers without fractional parts.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
343 * Floating Point Type:: Numbers with fractional parts and with a large range.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
344 * Character Type:: The representation of letters, numbers and
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
345 control characters.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
346 * Sequence Type:: Both lists and arrays are classified as sequences.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
347 * Cons Cell Type:: Cons cells, and lists (which are made from cons cells).
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
348 * Array Type:: Arrays include strings and vectors.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
349 * String Type:: An (efficient) array of characters.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
350 * Vector Type:: One-dimensional arrays.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
351 * Symbol Type:: A multi-use object that refers to a function,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
352 variable, property list, or itself.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
353 * Function Type:: A piece of executable code you can call from elsewhere.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
354 * Macro Type:: A method of expanding an expression into another
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
355 expression, more fundamental but less pretty.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
356 * Primitive Function Type:: A function written in C, callable from Lisp.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
357 * Byte-Code Type:: A function written in Lisp, then compiled.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
358 * Autoload Type:: A type used for automatically loading seldom-used
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
359 functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
360
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
361 List Type
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
362
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
363 * Dotted Pair Notation:: An alternative syntax for lists.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
364 * Association List Type:: A specially constructed list.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
365
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
366 Editing Types
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
367
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
368 * Buffer Type:: The basic object of editing.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
369 * Window Type:: What makes buffers visible.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
370 * Window Configuration Type::Save what the screen looks like.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
371 * Marker Type:: A position in a buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
372 * Process Type:: A process running on the underlying OS.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
373 * Stream Type:: Receive or send characters.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
374 * Keymap Type:: What function a keystroke invokes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
375 * Syntax Table Type:: What a character means.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
376
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
377 Numbers
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
378
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
379 * Integer Basics:: Representation and range of integers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
380 * Float Basics:: Representation and range of floating point.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
381 * Predicates on Numbers:: Testing for numbers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
382 * Comparison of Numbers:: Equality and inequality predicates.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
383 * Arithmetic Operations:: How to add, subtract, multiply and divide.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
384 * Bitwise Operations:: Logical and, or, not, shifting.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
385 * Numeric Conversions:: Converting float to integer and vice versa.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
386 * Math Functions:: Trig, exponential and logarithmic functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
387 * Random Numbers:: Obtaining random integers, predictable or not.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
388
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
389 Strings and Characters
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
390
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
391 * String Basics:: Basic properties of strings and characters.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
392 * Predicates for Strings:: Testing whether an object is a string or char.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
393 * Creating Strings:: Functions to allocate new strings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
394 * Text Comparison:: Comparing characters or strings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
395 * String Conversion:: Converting characters or strings and vice versa.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
396 * Formatting Strings:: @code{format}: Emacs's analog of @code{printf}.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
397 * Character Case:: Case conversion functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
398
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
399 Lists
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
400
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
401 * Cons Cells:: How lists are made out of cons cells.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
402 * Lists as Boxes:: Graphical notation to explain lists.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
403 * List-related Predicates:: Is this object a list? Comparing two lists.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
404 * List Elements:: Extracting the pieces of a list.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
405 * Building Lists:: Creating list structure.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
406 * Modifying Lists:: Storing new pieces into an existing list.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
407 * Sets And Lists:: A list can represent a finite mathematical set.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
408 * Association Lists:: A list can represent a finite relation or mapping.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
409
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
410 Modifying Existing List Structure
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
411
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
412 * Setcar:: Replacing an element in a list.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
413 * Setcdr:: Replacing part of the list backbone.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
414 This can be used to remove or add elements.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
415 * Rearrangement:: Reordering the elements in a list; combining lists.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
416
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
417 Sequences, Arrays, and Vectors
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
418
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
419 * Sequence Functions:: Functions that accept any kind of sequence.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
420 * Arrays:: Characteristics of arrays in Emacs Lisp.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
421 * Array Functions:: Functions specifically for arrays.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
422 * Vectors:: Functions specifically for vectors.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
423
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
424 Symbols
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
425
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
426 * Symbol Components:: Symbols have names, values, function definitions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
427 and property lists.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
428 * Definitions:: A definition says how a symbol will be used.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
429 * Creating Symbols:: How symbols are kept unique.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
430 * Property Lists:: Each symbol has a property list
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
431 for recording miscellaneous information.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
432
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
433 Evaluation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
434
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
435 * Intro Eval:: Evaluation in the scheme of things.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
436 * Eval:: How to invoke the Lisp interpreter explicitly.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
437 * Forms:: How various sorts of objects are evaluated.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
438 * Quoting:: Avoiding evaluation (to put constants in
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
439 the program).
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
440
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
441 Kinds of Forms
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
442
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
443 * Self-Evaluating Forms:: Forms that evaluate to themselves.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
444 * Symbol Forms:: Symbols evaluate as variables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
445 * Classifying Lists:: How to distinguish various sorts of list forms.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
446 * Function Forms:: Forms that call functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
447 * Macro Forms:: Forms that call macros.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
448 * Special Forms:: ``Special forms'' are idiosyncratic primitives,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
449 most of them extremely important.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
450 * Autoloading:: Functions set up to load files
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
451 containing their real definitions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
452
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
453 Control Structures
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
454
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
455 * Sequencing:: Evaluation in textual order.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
456 * Conditionals:: @code{if}, @code{cond}.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
457 * Combining Conditions:: @code{and}, @code{or}, @code{not}.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
458 * Iteration:: @code{while} loops.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
459 * Nonlocal Exits:: Jumping out of a sequence.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
460
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
461 Nonlocal Exits
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
462
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
463 * Catch and Throw:: Nonlocal exits for the program's own purposes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
464 * Examples of Catch:: Showing how such nonlocal exits can be written.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
465 * Errors:: How errors are signaled and handled.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
466 * Cleanups:: Arranging to run a cleanup form if an
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
467 error happens.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
468
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
469 Errors
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
470
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
471 * Signaling Errors:: How to report an error.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
472 * Processing of Errors:: What Emacs does when you report an error.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
473 * Handling Errors:: How you can trap errors and continue execution.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
474 * Error Symbols:: How errors are classified for trapping them.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
475
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
476 Variables
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
477
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
478 * Global Variables:: Variable values that exist permanently, everywhere.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
479 * Constant Variables:: Certain "variables" have values that never change.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
480 * Local Variables:: Variable values that exist only temporarily.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
481 * Void Variables:: Symbols that lack values.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
482 * Defining Variables:: A definition says a symbol is used as a variable.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
483 * Accessing Variables:: Examining values of variables whose names
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
484 are known only at run time.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
485 * Setting Variables:: Storing new values in variables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
486 * Variable Scoping:: How Lisp chooses among local and global values.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
487 * Buffer-Local Variables:: Variable values in effect only in one buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
488
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
489 Scoping Rules for Variable Bindings
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
490
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
491 * Scope:: Scope means where in the program a value
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
492 is visible. Comparison with other languages.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
493 * Extent:: Extent means how long in time a value exists.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
494 * Impl of Scope:: Two ways to implement dynamic scoping.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
495 * Using Scoping:: How to use dynamic scoping carefully and
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
496 avoid problems.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
497
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
498 Buffer-Local Variables
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
499
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
500 * Intro to Buffer-Local:: Introduction and concepts.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
501 * Creating Buffer-Local:: Creating and destroying buffer-local bindings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
502 * Default Value:: The default value is seen in buffers
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
503 that don't have their own local values.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
504
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
505 Functions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
506
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
507 * What Is a Function:: Lisp functions vs primitives; terminology.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
508 * Lambda Expressions:: How functions are expressed as Lisp objects.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
509 * Function Names:: A symbol can serve as the name of a function.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
510 * Defining Functions:: Lisp expressions for defining functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
511 * Calling Functions:: How to use an existing function.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
512 * Mapping Functions:: Applying a function to each element of a list, etc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
513 * Anonymous Functions:: Lambda-expressions are functions with no names.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
514 * Function Cells:: Accessing or setting the function definition
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
515 of a symbol.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
516 * Related Topics:: Cross-references to specific Lisp primitives
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
517 that have a special bearing on how
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
518 functions work.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
519
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
520 Lambda Expressions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
521
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
522 * Lambda Components:: The parts of a lambda expression.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
523 * Simple Lambda:: A simple example.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
524 * Argument List:: Details and special features of argument lists.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
525 * Function Documentation:: How to put documentation in a function.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
526
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
527 Macros
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
528
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
529 * Simple Macro:: A basic example.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
530 * Expansion:: How, when and why macros are expanded.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
531 * Compiling Macros:: How macros are expanded by the compiler.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
532 * Defining Macros:: How to write a macro definition.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
533 * Backquote:: Easier construction of list structure.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
534 * Problems with Macros:: Don't evaluate the macro arguments too many times.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
535 Don't hide the user's variables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
536
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
537 Loading
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
538
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
539 * How Programs Do Loading:: The @code{load} function and others.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
540 * Autoload:: Setting up a function to autoload.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
541 * Named Features:: Loading a library if it isn't already loaded.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
542 * Repeated Loading:: Precautions about loading a file twice.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
543
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
544 Byte Compilation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
545
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
546 * Compilation Functions:: Byte compilation functions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
547 * Disassembly:: Disassembling byte-code; how to read byte-code.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
548
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
549 Debugging Lisp Programs
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
550
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
551 * Debugger:: How the Emacs Lisp debugger is implemented.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
552 * Syntax Errors:: How to find syntax errors.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
553 * Compilation Errors:: How to find errors that show up in
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
554 byte compilation.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
555 * Edebug:: A source-level Emacs Lisp debugger.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
556
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
557 The Lisp Debugger
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
558
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
559 * Error Debugging:: Entering the debugger when an error happens.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
560 * Function Debugging:: Entering it when a certain function is called.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
561 * Explicit Debug:: Entering it at a certain point in the program.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
562 * Using Debugger:: What the debugger does; what you see while in it.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
563 * Debugger Commands:: Commands used while in the debugger.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
564 * Invoking the Debugger:: How to call the function @code{debug}.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
565 * Internals of Debugger:: Subroutines of the debugger, and global variables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
566
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
567 Debugging Invalid Lisp Syntax
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
568
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
569 * Excess Open:: How to find a spurious open paren or missing close.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
570 * Excess Close:: How to find a spurious close paren or missing open.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
571
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
572 Reading and Printing Lisp Objects
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
573
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
574 * Streams Intro:: Overview of streams, reading and printing.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
575 * Input Streams:: Various data types that can be used as
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
576 input streams.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
577 * Input Functions:: Functions to read Lisp objects from text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
578 * Output Streams:: Various data types that can be used as
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
579 output streams.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
580 * Output Functions:: Functions to print Lisp objects as text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
581
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
582 Minibuffers
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
583
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
584 * Intro to Minibuffers:: Basic information about minibuffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
585 * Text from Minibuffer:: How to read a straight text string.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
586 * Object from Minibuffer:: How to read a Lisp object or expression.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
587 * Completion:: How to invoke and customize completion.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
588 * Yes-or-No Queries:: Asking a question with a simple answer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
589 * Minibuffer Misc:: Various customization hooks and variables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
590
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
591 Completion
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
592
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
593 * Basic Completion:: Low-level functions for completing strings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
594 (These are too low level to use the minibuffer.)
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
595 * Minibuffer Completion:: Invoking the minibuffer with completion.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
596 * Completion Commands:: Minibuffer commands that do completion.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
597 * High-Level Completion:: Convenient special cases of completion
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
598 (reading buffer name, file name, etc.)
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
599 * Reading File Names:: Using completion to read file names.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
600 * Programmed Completion:: Finding the completions for a given file name.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
601
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
602 Command Loop
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
603
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
604 * Command Overview:: How the command loop reads commands.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
605 * Defining Commands:: Specifying how a function should read arguments.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
606 * Interactive Call:: Calling a command, so that it will read arguments.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
607 * Command Loop Info:: Variables set by the command loop for you to examine.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
608 * Input Events:: What input looks like when you read it.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
609 * Reading Input:: How to read input events from the keyboard or mouse.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
610 * Waiting:: Waiting for user input or elapsed time.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
611 * Quitting:: How @kbd{C-g} works. How to catch or defer quitting.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
612 * Prefix Command Arguments:: How the commands to set prefix args work.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
613 * Recursive Editing:: Entering a recursive edit,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
614 and why you usually shouldn't.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
615 * Disabling Commands:: How the command loop handles disabled commands.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
616 * Command History:: How the command history is set up, and how accessed.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
617 * Keyboard Macros:: How keyboard macros are implemented.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
618
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
619 Defining Commands
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
620
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
621 * Using Interactive:: General rules for @code{interactive}.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
622 * Interactive Codes:: The standard letter-codes for reading arguments
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
623 in various ways.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
624 * Interactive Examples:: Examples of how to read interactive arguments.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
625
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
626 Keymaps
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
627
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
628 * Keymap Terminology:: Definitions of terms pertaining to keymaps.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
629 * Format of Keymaps:: What a keymap looks like as a Lisp object.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
630 * Creating Keymaps:: Functions to create and copy keymaps.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
631 * Inheritance and Keymaps:: How one keymap can inherit the bindings
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
632 of another keymap.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
633 * Prefix Keys:: Defining a key with a keymap as its definition.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
634 * Menu Keymaps:: A keymap can define a menu for X
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
635 or for use from the terminal.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
636 * Active Keymaps:: Each buffer has a local keymap
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
637 to override the standard (global) bindings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
638 Each minor mode can also override them.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
639 * Key Lookup:: How extracting elements from keymaps works.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
640 * Functions for Key Lookup:: How to request key lookup.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
641 * Changing Key Bindings:: Redefining a key in a keymap.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
642 * Key Binding Commands:: Interactive interfaces for redefining keys.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
643 * Scanning Keymaps:: Looking through all keymaps, for printing help.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
644
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
645 Major and Minor Modes
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
646
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
647 * Major Modes:: Defining major modes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
648 * Minor Modes:: Defining minor modes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
649 * Mode Line Format:: Customizing the text that appears in the mode line.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
650 * Hooks:: How to use hooks; how to write code that
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
651 provides hooks.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
652
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
653 Major Modes
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
654
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
655 * Major Mode Conventions:: Coding conventions for keymaps, etc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
656 * Example Major Modes:: Text mode and Lisp modes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
657 * Auto Major Mode:: How Emacs chooses the major mode automatically.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
658 * Mode Help:: Finding out how to use a mode.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
659
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
660 Minor Modes
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
661
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
662 * Minor Mode Conventions:: Tips for writing a minor mode.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
663 * Keymaps and Minor Modes:: How a minor mode can have its own keymap.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
664
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
665 Mode Line Format
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
666
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
667 * Mode Line Data:: The data structure that controls the mode line.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
668 * Mode Line Variables:: Variables used in that data structure.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
669 * %-Constructs:: Putting information into a mode line.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
670
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
671 Documentation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
672
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
673 * Documentation Basics:: Good style for doc strings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
674 Where to put them. How Emacs stores them.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
675 * Accessing Documentation:: How Lisp programs can access doc strings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
676 * Keys in Documentation:: Substituting current key bindings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
677 * Describing Characters:: Making printable descriptions of
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
678 non-printing characters and key sequences.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
679 * Help Functions:: Subroutines used by Emacs help facilities.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
680
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
681 Files
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
682
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
683 * Visiting Files:: Reading files into Emacs buffers for editing.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
684 * Saving Buffers:: Writing changed buffers back into files.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
685 * Reading from Files:: Reading files into other buffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
686 * Writing to Files:: Writing new files from parts of buffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
687 * File Locks:: Locking and unlocking files, to prevent
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
688 simultaneous editing by two people.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
689 * Information about Files:: Testing existence, accessibility, size of files.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
690 * Contents of Directories:: Getting a list of the files in a directory.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
691 * Changing File Attributes:: Renaming files, changing protection, etc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
692 * File Names:: Decomposing and expanding file names.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
693
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
694 Visiting Files
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
695
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
696 * Visiting Functions:: The usual interface functions for visiting.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
697 * Subroutines of Visiting:: Lower-level subroutines that they use.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
698
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
699 Information about Files
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
700
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
701 * Testing Accessibility:: Is a given file readable? Writable?
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
702 * Kinds of Files:: Is it a directory? A link?
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
703 * File Attributes:: How large is it? Any other names? Etc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
704
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
705 File Names
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
706
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
707 * File Name Components:: The directory part of a file name, and the rest.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
708 * Directory Names:: A directory's name as a directory
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
709 is different from its name as a file.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
710 * Relative File Names:: Some file names are relative to a
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
711 current directory.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
712 * File Name Expansion:: Converting relative file names to absolute ones.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
713 * Unique File Names:: Generating names for temporary files.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
714 * File Name Completion:: Finding the completions for a given file name.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
715
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
716 Backups and Auto-Saving
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
717
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
718 * Backup Files:: How backup files are made; how their names
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
719 are chosen.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
720 * Auto-Saving:: How auto-save files are made; how their
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
721 names are chosen.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
722 * Reverting:: @code{revert-buffer}, and how to customize
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
723 what it does.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
724
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
725 Backup Files
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
726
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
727 * Making Backups:: How Emacs makes backup files, and when.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
728 * Rename or Copy:: Two alternatives: renaming the old file
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
729 or copying it.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
730 * Numbered Backups:: Keeping multiple backups for each source file.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
731 * Backup Names:: How backup file names are computed; customization.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
732
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
733 Buffers
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
734
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
735 * Buffer Basics:: What is a buffer?
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
736 * Buffer Names:: Accessing and changing buffer names.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
737 * Buffer File Name:: The buffer file name indicates which file
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
738 is visited.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
739 * Buffer Modification:: A buffer is @dfn{modified} if it needs to be saved.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
740 * Modification Time:: Determining whether the visited file was changed
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
741 ``behind Emacs's back''.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
742 * Read Only Buffers:: Modifying text is not allowed in a
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
743 read-only buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
744 * The Buffer List:: How to look at all the existing buffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
745 * Creating Buffers:: Functions that create buffers.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
746 * Killing Buffers:: Buffers exist until explicitly killed.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
747 * Current Buffer:: Designating a buffer as current
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
748 so primitives will access its contents.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
749
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
750 Windows
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
751
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
752 * Basic Windows:: Basic information on using windows.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
753 * Splitting Windows:: Splitting one window into two windows.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
754 * Deleting Windows:: Deleting a window gives its space to other windows.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
755 * Selecting Windows:: The selected window is the one that you edit in.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
756 * Cyclic Window Ordering:: Moving around the existing windows.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
757 * Buffers and Windows:: Each window displays the contents of a buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
758 * Displaying Buffers:: Higher-lever functions for displaying a buffer
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
759 and choosing a window for it.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
760 * Window Point:: Each window has its own location of point.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
761 * Window Start:: The display-start position controls which text
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
762 is on-screen in the window.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
763 * Vertical Scrolling:: Moving text up and down in the window.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
764 * Horizontal Scrolling:: Moving text sideways on the window.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
765 * Size of Window:: Accessing the size of a window.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
766 * Resizing Windows:: Changing the size of a window.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
767 * Window Configurations:: Saving and restoring the state of the screen.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
768
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
769 Frames
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
770
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
771 * Creating Frames:: Creating additional frames.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
772 * Multiple Displays:: Creating frames on other X displays.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
773 * Frame Parameters:: Controlling frame size, position, font, etc.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
774 * Frame Titles:: Automatic updating of frame titles.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
775 * Deleting Frames:: Frames last until explicitly deleted.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
776 * Finding All Frames:: How to examine all existing frames.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
777 * Frames and Windows:: A frame contains windows;
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
778 display of text always works through windows.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
779 * Minibuffers and Frames:: How a frame finds the minibuffer to use.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
780 * Input Focus:: Specifying the selected frame.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
781 * Visibility of Frames:: Frames may be visible or invisible, or icons.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
782 * Raising and Lowering:: Raising a frame makes it hide other X windows;
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
783 lowering it makes the others hide them.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
784 * Frame Configurations:: Saving the state of all frames.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
785 * Mouse Tracking:: Getting events that say when the mouse moves.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
786 * Mouse Position:: Asking where the mouse is, or moving it.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
787 * Pop-Up Menus:: Displaying a menu for the user to select from.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
788 * Dialog Boxes:: Displaying a box to ask yes or no.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
789 * Pointer Shapes:: Specifying the shape of the mouse pointer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
790 * X Selections:: Transferring text to and from other X clients.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
791 * Color Names:: Getting the definitions of color names.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
792 * Resources:: Getting resource values from the server.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
793 * Server Data:: Getting info about the X server.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
794
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
795 Positions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
796
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
797 * Point:: The special position where editing takes place.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
798 * Motion:: Changing point.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
799 * Excursions:: Temporary motion and buffer changes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
800 * Narrowing:: Restricting editing to a portion of the buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
801
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
802 Motion
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
803
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
804 * Character Motion:: Moving in terms of characters.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
805 * Word Motion:: Moving in terms of words.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
806 * Buffer End Motion:: Moving to the beginning or end of the buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
807 * Text Lines:: Moving in terms of lines of text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
808 * Screen Lines:: Moving in terms of lines as displayed.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
809 * List Motion:: Moving by parsing lists and sexps.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
810 * Skipping Characters:: Skipping characters belonging to a certain set.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
811
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
812 Markers
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
813
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
814 * Overview of Markers:: The components of a marker, and how it relocates.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
815 * Predicates on Markers:: Testing whether an object is a marker.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
816 * Creating Markers:: Making empty markers or markers at certain places.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
817 * Information from Markers:: Finding the marker's buffer or character
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
818 position.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
819 * Changing Markers:: Moving the marker to a new buffer or position.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
820 * The Mark:: How ``the mark'' is implemented with a marker.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
821 * The Region:: How to access ``the region''.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
822
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
823 Text
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
824
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
825 * Near Point:: Examining text in the vicinity of point.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
826 * Buffer Contents:: Examining text in a general fashion.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
827 * Insertion:: Adding new text to a buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
828 * Commands for Insertion:: User-level commands to insert text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
829 * Deletion:: Removing text from a buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
830 * User-Level Deletion:: User-level commands to delete text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
831 * The Kill Ring:: Where removed text sometimes is saved for
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
832 later use.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
833 * Undo:: Undoing changes to the text of a buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
834 * Auto Filling:: How auto-fill mode is implemented to break lines.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
835 * Filling:: Functions for explicit filling.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
836 * Margins:: How to specify margins for filling commands.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
837 * Sorting:: Functions for sorting parts of the buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
838 * Indentation:: Functions to insert or adjust indentation.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
839 * Columns:: Computing horizontal positions, and using them.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
840 * Case Changes:: Case conversion of parts of the buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
841 * Substitution:: Replacing a given character wherever it appears.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
842 * Registers:: How registers are implemented. Accessing
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
843 the text or position stored in a register.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
844
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
845 The Kill Ring
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
846
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
847 * Kill Ring Concepts:: What text looks like in the kill ring.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
848 * Kill Functions:: Functions that kill text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
849 * Yank Commands:: Commands that access the kill ring.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
850 * Low-Level Kill Ring:: Functions and variables for kill ring access.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
851 * Internals of Kill Ring:: Variables that hold kill-ring data.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
852
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
853 Indentation
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
854
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
855 * Primitive Indent:: Functions used to count and insert indentation.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
856 * Mode-Specific Indent:: Customize indentation for different modes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
857 * Region Indent:: Indent all the lines in a region.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
858 * Relative Indent:: Indent the current line based on previous lines.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
859 * Indent Tabs:: Adjustable, typewriter-like tab stops.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
860 * Motion by Indent:: Move to first non-blank character.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
861
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
862 Searching and Matching
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
863
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
864 * String Search:: Search for an exact match.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
865 * Regular Expressions:: Describing classes of strings.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
866 * Regexp Search:: Searching for a match for a regexp.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
867 * Match Data:: Finding out which part of the text matched
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
868 various parts of a regexp, after regexp search.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
869 * Saving Match Data:: Saving and restoring this information.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
870 * Standard Regexps:: Useful regexps for finding sentences, pages,...
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
871 * Searching and Case:: Case-independent or case-significant searching.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
872
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
873 Regular Expressions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
874
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
875 * Syntax of Regexps:: Rules for writing regular expressions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
876 * Regexp Example:: Illustrates regular expression syntax.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
877
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
878 Syntax Tables
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
879
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
880 * Syntax Descriptors:: How characters are classified.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
881 * Syntax Table Functions:: How to create, examine and alter syntax tables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
882 * Parsing Expressions:: Parsing balanced expressions
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
883 using the syntax table.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
884 * Standard Syntax Tables:: Syntax tables used by various major modes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
885 * Syntax Table Internals:: How syntax table information is stored.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
886
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
887 Syntax Descriptors
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
888
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
889 * Syntax Class Table:: Table of syntax classes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
890 * Syntax Flags:: Additional flags each character can have.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
891
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
892 Abbrevs And Abbrev Expansion
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
893
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
894 * Abbrev Mode:: Setting up Emacs for abbreviation.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
895 * Tables: Abbrev Tables. Creating and working with abbrev tables.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
896 * Defining Abbrevs:: Specifying abbreviations and their expansions.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
897 * Files: Abbrev Files. Saving abbrevs in files.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
898 * Expansion: Abbrev Expansion. Controlling expansion; expansion subroutines.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
899 * Standard Abbrev Tables:: Abbrev tables used by various major modes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
900
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
901 Processes
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
902
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
903 * Subprocess Creation:: Functions that start subprocesses.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
904 * Synchronous Processes:: Details of using synchronous subprocesses.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
905 * Asynchronous Processes:: Starting up an asynchronous subprocess.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
906 * Deleting Processes:: Eliminating an asynchronous subprocess.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
907 * Process Information:: Accessing run-status and other attributes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
908 * Input to Processes:: Sending input to an asynchronous subprocess.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
909 * Signals to Processes:: Stopping, continuing or interrupting
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
910 an asynchronous subprocess.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
911 * Output from Processes:: Collecting output from an asynchronous subprocess.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
912 * Sentinels:: Sentinels run when process run-status changes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
913 * Network:: Opening network connections.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
914
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
915 Receiving Output from Processes
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
916
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
917 * Process Buffers:: If no filter, output is put in a buffer.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
918 * Filter Functions:: Filter functions accept output from the process.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
919 * Accepting Output:: How to wait until process output arrives.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
920
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
921 Operating System Interface
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
922
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
923 * Starting Up:: Customizing Emacs start-up processing.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
924 * Getting Out:: How exiting works (permanent or temporary).
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
925 * System Environment:: Distinguish the name and kind of system.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
926 * Terminal Input:: Recording terminal input for debugging.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
927 * Terminal Output:: Recording terminal output for debugging.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
928 * Flow Control:: How to turn output flow control on or off.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
929 * Batch Mode:: Running Emacs without terminal interaction.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
930
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
931 Starting Up Emacs
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
932
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
933 * Start-up Summary:: Sequence of actions Emacs performs at start-up.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
934 * Init File:: Details on reading the init file (@file{.emacs}).
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
935 * Terminal-Specific:: How the terminal-specific Lisp file is read.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
936 * Command Line Arguments:: How command line arguments are processed,
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
937 and how you can customize them.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
938
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
939 Getting out of Emacs
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
940
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
941 * Killing Emacs:: Exiting Emacs irreversibly.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
942 * Suspending Emacs:: Exiting Emacs reversibly.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
943
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
944 Emacs Display
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
945
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
946 * Refresh Screen:: Clearing the screen and redrawing everything on it.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
947 * Truncation:: Folding or wrapping long text lines.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
948 * The Echo Area:: Where messages are displayed.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
949 * Selective Display:: Hiding part of the buffer text.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
950 * Overlay Arrow:: Display of an arrow to indicate position.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
951 * Temporary Displays:: Displays that go away automatically.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
952 * Waiting:: Forcing display update and waiting for user.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
953 * Blinking:: How Emacs shows the matching open parenthesis.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
954 * Usual Display:: How control characters are displayed.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
955 * Beeping:: Audible signal to the user.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
956 * Window Systems:: Which window system is being used.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
957
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
958 GNU Emacs Internals
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
959
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
960 * Building Emacs:: How to preload Lisp libraries into Emacs.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
961 * Pure Storage:: A kludge to make preloaded Lisp functions sharable.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
962 * Garbage Collection:: Reclaiming space for Lisp objects no longer used.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
963 * Object Internals:: Data formats of buffers, windows, processes.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
964 * Writing Emacs Primitives:: Writing C code for Emacs.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
965
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
966 Object Internals
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
967
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
968 * Buffer Internals:: Components of a buffer structure.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
969 * Window Internals:: Components of a window structure.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
970 * Process Internals:: Components of a process structure.
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
971 @end menu
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
972
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
973 @c ================ Volume 1 ================
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
974
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
975 @include intro.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
976 @include objects.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
977 @include numbers.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
978 @include strings.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
979
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
980 @include lists.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
981 @include sequences.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
982 @include symbols.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
983 @include eval.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
984
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
985 @include control.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
986 @include variables.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
987 @include functions.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
988 @include macros.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
989
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
990 @include loading.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
991 @include compile.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
992 @include debugging.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
993 @include streams.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
994
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
995 @include minibuf.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
996 @include commands.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
997 @include keymaps.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
998 @include modes.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
999
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1000 @c ================ Beginning of Volume 2 ================
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1001
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1002 @c include help.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1003 @c include files.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1004 @c include backups.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1005 @c include buffers.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1006
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1007 @c include windows.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1008 @c include frames.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1009 @c include positions.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1010 @c include markers.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1011 @c include text.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1012
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1013 @c include searching.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1014 @c include syntax.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1015 @c include abbrevs.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1016
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1017 @c include processes.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1018 @c include os.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1019 @c include display.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1020 @c include calendar.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1021
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1022 @c MOVE to Emacs Manual: include misc-modes.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1023
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1024 @c appendices
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1025
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1026 @c REMOVE this: include non-hacker.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1027
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1028 @c include tips.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1029 @c include internals.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1030 @c include errors.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1031 @c include locals.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1032 @c include maps.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1033 @c include hooks.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1034 @c include anti.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1035
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1036 @include index-vol1.texi
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1037
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1038 @page
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1039 @c Print the tables of contents
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1040 @summarycontents
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1041 @contents
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1042 @c That's all
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1043
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1044 @bye
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1045
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1046
4aa3364dbf8e Renamed from elisp-vol1.texi and
Eli Zaretskii <eliz@gnu.org>
parents:
diff changeset
1047 These words prevent "local variables" above from confusing Emacs.