aboutsummaryrefslogtreecommitdiffstats
path: root/doc/lispref
diff options
context:
space:
mode:
authorStefan Monnier2010-10-15 17:55:33 -0400
committerStefan Monnier2010-10-15 17:55:33 -0400
commit0c747cb143fa227e78f350ac353d703f489209df (patch)
tree5b434055c797bd75eaa1e3d9d0773e586d44daee /doc/lispref
parenta01a7932080e8a6e7bc8472c58cefabcc2c37df3 (diff)
parentaa095b2db98ae149737f8de00ee733b1d257ed33 (diff)
downloademacs-0c747cb143fa227e78f350ac353d703f489209df.tar.gz
emacs-0c747cb143fa227e78f350ac353d703f489209df.zip
Merge from trunk
Diffstat (limited to 'doc/lispref')
-rw-r--r--doc/lispref/ChangeLog112
-rw-r--r--doc/lispref/Makefile.in79
-rw-r--r--doc/lispref/book-spine.texi (renamed from doc/lispref/book-spine.texinfo)8
-rw-r--r--doc/lispref/display.texi28
-rw-r--r--doc/lispref/elisp.texi6
-rw-r--r--doc/lispref/files.texi42
-rw-r--r--doc/lispref/makefile.w32-in10
-rw-r--r--doc/lispref/os.texi53
-rw-r--r--doc/lispref/searching.texi6
-rw-r--r--doc/lispref/vol1.texi6
-rw-r--r--doc/lispref/vol2.texi6
11 files changed, 272 insertions, 84 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index ec065e9ce76..f5878dfed74 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,102 @@
12010-10-15 Eli Zaretskii <eliz@gnu.org>
2
3 * os.texi (Dynamic Libraries): New node, with slightly modified
4 text deleted from "Image Formats".
5 (System Interface): Add @menu entry for "Dynamic Libraries".
6
7 * display.texi (Image Formats): Remove description of
8 image-library-alist. (Renamed in 2010-10-13T14:50:06Z!lekktu@gmail.com.)
9
102010-10-12 Glenn Morris <rgm@gnu.org>
11
12 * book-spine.texinfo: Rename to book-spine.texi.
13
142010-10-11 Glenn Morris <rgm@gnu.org>
15
16 * Makefile.in (MAKEINFO): Add explicit -I$srcdir.
17
18 * Makefile.in (DVIPS): New variable.
19 (.PHONY): Add html, ps.
20 (html, elisp.html, ps, elisp.ps): New targets.
21 (clean): Delete html, ps files.
22 ($(infodir)/elisp): Remove unnecessary includes.
23
242010-10-09 Eli Zaretskii <eliz@gnu.org>
25
26 * makefile.w32-in (emacsdir): New variable.
27 (srcs): Add emacsver.texi.
28 ($(infodir)/elisp, elisp.dvi): Add -I$(emacsdir).
29
302010-10-09 Glenn Morris <rgm@gnu.org>
31
32 * Makefile.in (VPATH): Remove.
33 (infodir): Make it absolute.
34 (mkinfodir, $(infodir)/elisp, infoclean): No need to cd $srcdir.
35
36 * Makefile.in (dist): Anchor regexps.
37
38 * Makefile.in (srcs): Put elisp.texi first.
39 ($(infodir)/elisp, elisp.dvi, elisp.pdf): Use $<.
40
41 * Makefile.in (infoclean): Remove harmless, long-standing error.
42
43 * Makefile.in ($(infodir)): Delete rule.
44 (mkinfodir): New.
45 ($(infodir)/elisp): Use $mkinfodir instead of infodir.
46
47 * Makefile.in (dist): Remove reference to emacsver.texi.in.
48 Also copy emacsver.texi, and edit $emacsdir.
49
502010-10-09 Glenn Morris <rgm@gnu.org>
51
52 * Makefile.in (emacsdir): New variable.
53 (MAKEINFO): Add -I $emacsdir.
54 (dist): Copy emacsver.texi.
55 (srcs): Add emacsver.texi.
56
57 * book-spine.texinfo, elisp.texi, vol2.texi, vol1.texi:
58 Set EMACSVER by including emacsver.texi.
59
60 * Makefile.in (.PHONY): Declare info, dvi, pdf, dist.
61
622010-10-07 Glenn Morris <rgm@gnu.org>
63
64 * Makefile.in (version): New, set by configure.
65 (clean): Delete dist tar file.
66 (dist): Use version in tar name.
67
682010-10-06 Glenn Morris <rgm@gnu.org>
69
70 * Makefile.in: Rearrange to more closely resemble doc/emacs/Makefile.
71 (INSTALL_INFO): Remove unused variable.
72 (mostlyclean, infoclean, dist): New rules.
73 (clean): Delete dvi and pdf files.
74 (maintainer-clean): Remove elisp.oaux, use infoclean.
75 ($(infodir)): Add parallel build workaround.
76
772010-10-04 Glenn Morris <rgm@gnu.org>
78
79 * Makefile.in (dvi, pdf, $(infodir)): New targets.
80 ($(infodir)/elisp): Ensure target directory exists. Use $@.
81 Fix -I typo.
82 (clean): No 'make.out' or 'core' files.
83 (.PHONY): Declare clean rules.
84 (maintainer-clean): Delete pdf file. Guard against cd failures.
85
862010-10-03 Glenn Morris <rgm@gnu.org>
87
88 * files.texi (File Name Components): Remove ignored section about
89 deleted variable directory-sep-char.
90
912010-10-03 Michael Albinus <michael.albinus@gmx.de>
92
93 * files.texi (Magic File Names): New defopt
94 remote-file-name-inhibit-cache.
95
962010-10-02 Glenn Morris <rgm@gnu.org>
97
98 * os.texi (Killing Emacs): Hook now runs in batch mode.
99
12010-09-18 Stefan Monnier <monnier@iro.umontreal.ca> 1002010-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
2 101
3 * text.texi (Special Properties): Clarify when modification-hooks run. 102 * text.texi (Special Properties): Clarify when modification-hooks run.
@@ -2420,6 +2519,12 @@
2420 2519
2421 * display.texi (Images): Delete redundant @findex. 2520 * display.texi (Images): Delete redundant @findex.
2422 2521
25222007-08-16 Stefan Monnier <monnier@iro.umontreal.ca>
2523
2524 * text.texi (Change Hooks): (after|before)-change-functions are no
2525 longer bound to nil while running; rather inhibit-modification-hooks
2526 is t.
2527
24232007-08-16 Richard Stallman <rms@gnu.org> 25282007-08-16 Richard Stallman <rms@gnu.org>
2424 2529
2425 * processes.texi (Asynchronous Processes): Clarify 2530 * processes.texi (Asynchronous Processes): Clarify
@@ -8652,11 +8757,10 @@
8652 8757
8653;; Local Variables: 8758;; Local Variables:
8654;; coding: utf-8 8759;; coding: utf-8
8655;; add-log-time-zone-rule: t
8656;; End: 8760;; End:
8657 8761
8658 Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 8762 Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
8659 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 8763 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
8660 8764
8661 This file is part of GNU Emacs. 8765 This file is part of GNU Emacs.
8662 8766
@@ -8672,5 +8776,3 @@
8672 8776
8673 You should have received a copy of the GNU General Public License 8777 You should have received a copy of the GNU General Public License
8674 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. 8778 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
8675
8676;;; arch-tag: 985ae0ce-df29-475b-b3f8-4bbcbf6f7fda
diff --git a/doc/lispref/Makefile.in b/doc/lispref/Makefile.in
index bc13a63b1b0..f1caa9abfa2 100644
--- a/doc/lispref/Makefile.in
+++ b/doc/lispref/Makefile.in
@@ -19,26 +19,29 @@
19# You should have received a copy of the GNU General Public License 19# You should have received a copy of the GNU General Public License
20# along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. 20# along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21 21
22SHELL = /bin/sh
22 23
23# Standard configure variables. 24# Standard configure variables.
24srcdir = @srcdir@ 25srcdir = @srcdir@
25 26
26# Tell make where to find source files; this is needed for the makefiles. 27version=@version@
27VPATH=@srcdir@
28 28
29infodir = ../../info 29infodir = $(srcdir)/../../info
30# Directory with the (customized) texinfo.tex file. 30# Directory with the (customized) texinfo.tex file.
31texinfodir = $(srcdir)/../misc 31texinfodir = $(srcdir)/../misc
32# Directory with emacsver.texi.
33emacsdir = $(srcdir)/../emacs
32 34
35MAKEINFO = makeinfo --force -I $(emacsdir) -I $(srcdir)
33TEXI2DVI = texi2dvi 36TEXI2DVI = texi2dvi
34TEXI2PDF = texi2pdf 37TEXI2PDF = texi2pdf
35SHELL = /bin/sh 38DVIPS = dvips
36INSTALL_INFO = install-info
37MAKEINFO = makeinfo --force
38 39
39# List of all the texinfo files in the manual: 40# List of all the texinfo files in the manual:
40 41
41srcs = \ 42srcs = \
43 $(srcdir)/elisp.texi \
44 $(emacsdir)/emacsver.texi \
42 $(srcdir)/abbrevs.texi \ 45 $(srcdir)/abbrevs.texi \
43 $(srcdir)/advice.texi \ 46 $(srcdir)/advice.texi \
44 $(srcdir)/anti.texi \ 47 $(srcdir)/anti.texi \
@@ -52,7 +55,6 @@ srcs = \
52 $(srcdir)/debugging.texi \ 55 $(srcdir)/debugging.texi \
53 $(srcdir)/display.texi \ 56 $(srcdir)/display.texi \
54 $(srcdir)/edebug.texi \ 57 $(srcdir)/edebug.texi \
55 $(srcdir)/elisp.texi \
56 $(srcdir)/errors.texi \ 58 $(srcdir)/errors.texi \
57 $(srcdir)/eval.texi \ 59 $(srcdir)/eval.texi \
58 $(srcdir)/files.texi \ 60 $(srcdir)/files.texi \
@@ -92,28 +94,67 @@ srcs = \
92 $(srcdir)/gpl.texi \ 94 $(srcdir)/gpl.texi \
93 $(srcdir)/doclicense.texi 95 $(srcdir)/doclicense.texi
94 96
97mkinfodir = @test -d ${infodir} || mkdir ${infodir} || test -d ${infodir}
95 98
96.PHONY: clean 99.PHONY: info dvi pdf ps
97 100
98# The info file is named `elisp'.
99info: $(infodir)/elisp 101info: $(infodir)/elisp
102dvi: elisp.dvi
103html: elisp.html
104pdf: elisp.pdf
105ps: elisp.ps
100 106
101$(infodir)/elisp: $(srcs) 107$(infodir)/elisp: $(srcs)
102 cd $(srcdir); $(MAKEINFO) -I. -I$(infodir) elisp.texi -o $(infodir)/elisp 108 $(mkinfodir)
109 $(MAKEINFO) -o $@ $<
103 110
104elisp.dvi: $(srcs) 111elisp.dvi: $(srcs)
105 $(TEXI2DVI) -I $(srcdir) -I $(texinfodir) $(srcdir)/elisp.texi 112 $(TEXI2DVI) -I $(srcdir) -I $(texinfodir) $<
113
114elisp.html: $(srcs)
115 $(MAKEINFO) --html -o $@ $<
116
117elisp.ps: elisp.dvi
118 $(DVIPS) -o $@ $<
106 119
107elisp.pdf: $(srcs) 120elisp.pdf: $(srcs)
108 $(TEXI2PDF) -I $(srcdir) -I $(texinfodir) $(srcdir)/elisp.texi 121 $(TEXI2PDF) -I $(srcdir) -I $(texinfodir) $<
122
123.PHONY: mostlyclean clean distclean maintainer-clean infoclean
124
125## [12] stuff is from two-volume.make.
126mostlyclean:
127 rm -f *.aux *.log *.toc *.cp *.cps *.fn *.fns *.ky *.kys \
128 *.op *.ops *.pg *.pgs *.tp *.tps *.vr *.vrs
129 rm -f elisp[12]*
109 130
110clean: 131clean: mostlyclean
111 rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \ 132 rm -f elisp.dvi elisp.pdf elisp.ps vol[12].pdf
112 *.vr *.vrs *.pg *.pgs *.ky *.kys elisp[12]* 133 rm -rf elisp.html
113 rm -f make.out core 134 rm -f emacs-lispref-${version}.tar*
114 135
115distclean: clean 136distclean: clean
116 137
117maintainer-clean: clean 138infoclean:
118 rm -f elisp.dvi elisp.oaux 139 -cd $(infodir) && rm -f elisp elisp-[1-9] elisp-[1-9][0-9]
119 cd $(infodir); rm -f elisp elisp-[1-9] elisp-[1-9][0-9] 140
141maintainer-clean: distclean infoclean
142
143.PHONY: dist
144
145## Note this excludes the two-volume stuff.
146dist:
147 rm -rf emacs-lispref-${version}
148 mkdir emacs-lispref-${version}
149 cp ${srcdir}/*.texi ${texinfodir}/texinfo.tex \
150 $(emacsdir)/emacsver.texi ${srcdir}/ChangeLog* \
151 ${srcdir}/README emacs-lispref-${version}/
152 sed -e 's/@sr[c]dir@/./' -e 's/^\(texinfodir *=\).*/\1 ./' \
153 -e 's/^\(emacsdir *=\).*/\1 ./' \
154 -e 's/^\(infodir *=\).*/\1 ./' -e 's/^\(clean:.*\)/\1 infoclean/' \
155 -e "s/@ver[s]ion@/${version}/" \
156 ${srcdir}/Makefile.in > emacs-lispref-${version}/Makefile
157 tar -cf emacs-lispref-${version}.tar emacs-lispref-${version}
158 rm -rf emacs-lispref-${version}
159
160### Makefile ends here
diff --git a/doc/lispref/book-spine.texinfo b/doc/lispref/book-spine.texi
index 732df503ec0..270def6d8b3 100644
--- a/doc/lispref/book-spine.texinfo
+++ b/doc/lispref/book-spine.texi
@@ -4,6 +4,8 @@
4@settitle book-spine 4@settitle book-spine
5@c %**end of header 5@c %**end of header
6 6
7@include emacsver.texi
8
7@c need dot in text so first space command works! 9@c need dot in text so first space command works!
8. 10.
9@sp 7 11@sp 7
@@ -11,7 +13,7 @@
11@center @titlefont{GNU Emacs Lisp Reference Manual} 13@center @titlefont{GNU Emacs Lisp Reference Manual}
12@sp 5 14@sp 5
13@center GNU 15@center GNU
14@center Emacs Version 24.0.50 16@center Emacs Version @value{EMACSVER}
15@center for Unix Users 17@center for Unix Users
16@sp 5 18@sp 5
17 19
@@ -23,7 +25,3 @@
23@sp 5 25@sp 5
24@center Free Software Foundation 26@center Free Software Foundation
25@bye 27@bye
26
27@ignore
28 arch-tag: 4466c7ca-e549-4119-948c-6eed34e1ff87
29@end ignore
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index 037c334ab88..f4092cfa7ea 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -4055,10 +4055,12 @@ displayed (@pxref{Display Feature Testing}).
4055 4055
4056 Emacs can display a number of different image formats; some of them 4056 Emacs can display a number of different image formats; some of them
4057are supported only if particular support libraries are installed on 4057are supported only if particular support libraries are installed on
4058your machine. In some environments, Emacs can load image 4058your machine. In some environments, Emacs can load support libraries
4059libraries on demand; if so, the variable @code{image-library-alist} 4059on demand; if so, the variable @code{dynamic-library-alist}
4060can be used to modify the set of known names for these dynamic 4060(@pxref{Dynamic Libraries}) can be used to modify the set of known
4061libraries (though it is not possible to add new image formats). 4061names for these dynamic libraries (though it is not possible to add
4062new image formats). Note that image types @code{pbm} and @code{xbm}
4063do not depend on external libraries and are always available in Emacs.
4062 4064
4063 The supported image formats include XBM, XPM (this requires the 4065 The supported image formats include XBM, XPM (this requires the
4064libraries @code{libXpm} version 3.4k and @code{libz}), GIF (requiring 4066libraries @code{libXpm} version 3.4k and @code{libz}), GIF (requiring
@@ -4082,24 +4084,6 @@ To know which image types are really available, use
4082@code{image-type-available-p}. 4084@code{image-type-available-p}.
4083@end defvar 4085@end defvar
4084 4086
4085@defvar image-library-alist
4086This in an alist of image types vs external libraries needed to
4087display them.
4088
4089Each element is a list @code{(@var{image-type} @var{library}...)},
4090where the car is a supported image format from @code{image-types}, and
4091the rest are strings giving alternate filenames for the corresponding
4092external libraries to load.
4093
4094Emacs tries to load the libraries in the order they appear on the
4095list; if none is loaded, the running session of Emacs won't support
4096the image type. @code{pbm} and @code{xbm} don't need to be listed;
4097they're always supported.
4098
4099This variable is ignored if the image libraries are statically linked
4100into Emacs.
4101@end defvar
4102
4103@defun image-type-available-p type 4087@defun image-type-available-p type
4104This function returns non-@code{nil} if image type @var{type} is 4088This function returns non-@code{nil} if image type @var{type} is
4105available, i.e., if images of this type can be loaded and displayed in 4089available, i.e., if images of this type can be loaded and displayed in
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi
index 7f0a2ff5a37..252c6afb1bd 100644
--- a/doc/lispref/elisp.texi
+++ b/doc/lispref/elisp.texi
@@ -8,7 +8,7 @@
8@c Please remember to update the edition number in README as well. 8@c Please remember to update the edition number in README as well.
9@c And also the copies in vol1.texi and vol2.texi. 9@c And also the copies in vol1.texi and vol2.texi.
10@set VERSION 3.0 10@set VERSION 3.0
11@set EMACSVER 24.0.50 11@include emacsver.texi
12@set DATE July 2009 12@set DATE July 2009
13 13
14@c in general, keep the following line commented out, unless doing a 14@c in general, keep the following line commented out, unless doing a
@@ -1530,7 +1530,3 @@ Object Internals
1530 1530
1531 1531
1532These words prevent "local variables" above from confusing Emacs. 1532These words prevent "local variables" above from confusing Emacs.
1533
1534@ignore
1535 arch-tag: f7e9a219-a0e1-4776-b631-08eaa1d49b34
1536@end ignore
diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi
index 23fd2376a57..2b539f00975 100644
--- a/doc/lispref/files.texi
+++ b/doc/lispref/files.texi
@@ -1758,20 +1758,6 @@ Note that the @samp{.~3~} in the two last examples is the backup part,
1758not an extension. 1758not an extension.
1759@end defun 1759@end defun
1760 1760
1761@ignore
1762Andrew Innes says that this
1763
1764@c @defvar directory-sep-char
1765This variable holds the character that Emacs normally uses to separate
1766file name components. The default value is @code{?/}, but on MS-Windows
1767you can set it to @code{?\\}; then the functions that transform file names
1768use backslashes in their output.
1769
1770File names using backslashes work as input to Lisp primitives even on
1771MS-DOS and MS-Windows, even if @code{directory-sep-char} has its default
1772value of @code{?/}.
1773@end defvar
1774@end ignore
1775 1761
1776@node Relative File Names 1762@node Relative File Names
1777@subsection Absolute and Relative File Names 1763@subsection Absolute and Relative File Names
@@ -2857,6 +2843,34 @@ non-magic directory to serve as its current directory, and this function
2857is a good way to come up with one. 2843is a good way to come up with one.
2858@end defun 2844@end defun
2859 2845
2846@defopt remote-file-name-inhibit-cache
2847Whether to use the remote file-name cache for read access.
2848
2849File attributes of remote files are cached for better performance. If
2850they are changed out of Emacs' control, the cached values become
2851invalid, and must be reread.
2852
2853When set to @code{nil}, cached values are always used. This shall be
2854set with care. When set to @code{t}, cached values are never used.
2855ALthough this is the safest value, it could result in performance
2856degradation.
2857
2858A compromise is to set it to a positive number. This means that
2859cached values are used for that amount of seconds since they were
2860cached.
2861
2862In case a remote file is checked regularly, it might be reasonable to
2863let-bind this variable to a value less then the time period between
2864two checks. Example:
2865
2866@example
2867(defun display-time-file-nonempty-p (file)
2868 (let ((remote-file-name-inhibit-cache (- display-time-interval 5)))
2869 (and (file-exists-p file)
2870 (< 0 (nth 7 (file-attributes (file-chase-links file)))))))
2871@end example
2872@end defopt
2873
2860@node Format Conversion 2874@node Format Conversion
2861@section File Format Conversion 2875@section File Format Conversion
2862 2876
diff --git a/doc/lispref/makefile.w32-in b/doc/lispref/makefile.w32-in
index 008870b3c5c..86a0de33095 100644
--- a/doc/lispref/makefile.w32-in
+++ b/doc/lispref/makefile.w32-in
@@ -25,6 +25,9 @@ srcdir = .
25infodir = $(srcdir)/../../info 25infodir = $(srcdir)/../../info
26usermanualdir = $(srcdir)/../emacs 26usermanualdir = $(srcdir)/../emacs
27 27
28# Directory with emacsver.texi.
29emacsdir = $(srcdir)/../emacs
30
28# Redefine `TEX' if `tex' does not invoke plain TeX. For example: 31# Redefine `TEX' if `tex' does not invoke plain TeX. For example:
29# TEX=platex 32# TEX=platex
30TEX=tex 33TEX=tex
@@ -43,6 +46,7 @@ manual = elisp-manual-23-$(VERSION)
43# List of all the texinfo files in the manual: 46# List of all the texinfo files in the manual:
44 47
45srcs = \ 48srcs = \
49 $(emacsdir)/emacsver.texi \
46 $(srcdir)/abbrevs.texi \ 50 $(srcdir)/abbrevs.texi \
47 $(srcdir)/advice.texi \ 51 $(srcdir)/advice.texi \
48 $(srcdir)/anti.texi \ 52 $(srcdir)/anti.texi \
@@ -107,10 +111,12 @@ $(infodir)/dir:
107 $(INSTALL_INFO) --info-dir=$(infodir) $(infodir)/elisp 111 $(INSTALL_INFO) --info-dir=$(infodir) $(infodir)/elisp
108 112
109$(infodir)/elisp: $(srcs) 113$(infodir)/elisp: $(srcs)
110 $(MAKEINFO) -I. -I$(srcdir) -o $(infodir)/elisp $(srcdir)/elisp.texi 114 $(MAKEINFO) -I. -I$(srcdir) -I$(emacsdir) \
115 -o $(infodir)/elisp $(srcdir)/elisp.texi
111 116
112elisp.dvi: $(srcs) 117elisp.dvi: $(srcs)
113 $(texinputdir) $(TEX) -I $(usermanualdir) $(srcdir)/elisp.texi 118 $(texinputdir) $(TEX) -I $(usermanualdir) -I$(emacsdir) \
119 $(srcdir)/elisp.texi
114 120
115clean: 121clean:
116 - $(DEL) *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \ 122 - $(DEL) *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index dd827234272..e99e3fe89d8 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -37,6 +37,7 @@ terminal and the screen.
37* X11 Keysyms:: Operating on key symbols for X Windows. 37* X11 Keysyms:: Operating on key symbols for X Windows.
38* Batch Mode:: Running Emacs without terminal interaction. 38* Batch Mode:: Running Emacs without terminal interaction.
39* Session Management:: Saving and restoring state with X Session Management. 39* Session Management:: Saving and restoring state with X Session Management.
40* Dynamic Libraries:: On-demand loading of support libraries.
40@end menu 41@end menu
41 42
42@node Starting Up 43@node Starting Up
@@ -577,7 +578,6 @@ does not run the remaining functions in this hook. Calling
577This variable is a normal hook; once @code{save-buffers-kill-emacs} is 578This variable is a normal hook; once @code{save-buffers-kill-emacs} is
578finished with all file saving and confirmation, it calls 579finished with all file saving and confirmation, it calls
579@code{kill-emacs} which runs the functions in this hook. 580@code{kill-emacs} which runs the functions in this hook.
580@code{kill-emacs} does not run this hook in batch mode.
581 581
582@code{kill-emacs} may be invoked directly (that is not via 582@code{kill-emacs} may be invoked directly (that is not via
583@code{save-buffers-kill-emacs}) if the terminal is disconnected, or in 583@code{save-buffers-kill-emacs}) if the terminal is disconnected, or in
@@ -2187,6 +2187,57 @@ Emacs is restarted by the session manager.
2187@end group 2187@end group
2188@end example 2188@end example
2189 2189
2190@node Dynamic Libraries
2191@section Dynamically Loaded Libraries
2192@cindex dynamic libraries
2193
2194 A @dfn{dynamically loaded library} is a library that is loaded on
2195demand, when its facilities are first needed. Emacs supports such
2196on-demand loading of support libraries for some of its features.
2197
2198@defvar dynamic-library-alist
2199This is an alist of dynamic libraries and external library files
2200implementing them.
2201
2202Each element is a list of the form
2203@w{@code{(@var{library} @var{files}@dots{})}}, where the @code{car} is
2204a symbol representing a supported external library, and the rest are
2205strings giving alternate filenames for that library.
2206
2207Emacs tries to load the library from the files in the order they
2208appear in the list; if none is found, the running session of Emacs
2209won't have access to that library, and the features that depend on the
2210library will be unavailable.
2211
2212Image support on some platforms uses this facility. Here's an example
2213of setting this variable for supporting images on MS-Windows:
2214
2215@lisp
2216(setq dynamic-library-alist
2217 '((xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll")
2218 (png "libpng12d.dll" "libpng12.dll" "libpng.dll"
2219 "libpng13d.dll" "libpng13.dll")
2220 (jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll")
2221 (tiff "libtiff3.dll" "libtiff.dll")
2222 (gif "giflib4.dll" "libungif4.dll" "libungif.dll")
2223 (svg "librsvg-2-2.dll")
2224 (gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
2225 (glib "libglib-2.0-0.dll")
2226 (gobject "libgobject-2.0-0.dll")))
2227@end lisp
2228
2229Note that image types @code{pbm} and @code{xbm} do not need entries in
2230this variable because they do not depend on external libraries and are
2231always available in Emacs.
2232
2233Also note that this variable is not meant to be a generic facility for
2234accessing external libraries; only those already known by Emacs can
2235be loaded through it.
2236
2237This variable is ignored if the given @var{library} is statically
2238linked into Emacs.
2239@end defvar
2240
2190@ignore 2241@ignore
2191 arch-tag: 8378814a-30d7-467c-9615-74a80b9988a7 2242 arch-tag: 8378814a-30d7-467c-9615-74a80b9988a7
2192@end ignore 2243@end ignore
diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi
index b4b4c23b1ed..6cc7d451a6e 100644
--- a/doc/lispref/searching.texi
+++ b/doc/lispref/searching.texi
@@ -918,7 +918,11 @@ for Font Lock mode.
918If the optional argument @var{paren} is non-@code{nil}, then the 918If the optional argument @var{paren} is non-@code{nil}, then the
919returned regular expression is always enclosed by at least one 919returned regular expression is always enclosed by at least one
920parentheses-grouping construct. If @var{paren} is @code{words}, then 920parentheses-grouping construct. If @var{paren} is @code{words}, then
921that construct is additionally surrounded by @samp{\<} and @samp{\>}. 921that construct is additionally surrounded by @samp{\<} and @samp{\>};
922alternatively, if @var{paren} is @code{symbols}, then that construct
923is additionally surrounded by @samp{\_<} and @samp{\_>}
924(@code{symbols} is often appropriate when matching
925programming-language keywords and the like).
922 926
923This simplified definition of @code{regexp-opt} produces a 927This simplified definition of @code{regexp-opt} produces a
924regular expression which is equivalent to the actual value 928regular expression which is equivalent to the actual value
diff --git a/doc/lispref/vol1.texi b/doc/lispref/vol1.texi
index cbc26ebcec6..3ac3f58a330 100644
--- a/doc/lispref/vol1.texi
+++ b/doc/lispref/vol1.texi
@@ -27,7 +27,7 @@
27@c Version of the manual and of Emacs. 27@c Version of the manual and of Emacs.
28@c Please remember to update the edition number in README as well. 28@c Please remember to update the edition number in README as well.
29@set VERSION 3.0 29@set VERSION 3.0
30@set EMACSVER 24.0.50 30@include emacsver.texi
31@set DATE July 2009 31@set DATE July 2009
32 32
33@dircategory Emacs 33@dircategory Emacs
@@ -1550,7 +1550,3 @@ Object Internals
1550 1550
1551 1551
1552These words prevent "local variables" above from confusing Emacs. 1552These words prevent "local variables" above from confusing Emacs.
1553
1554@ignore
1555 arch-tag: 9594760d-8801-4d1b-aeb9-f3b3166b5be2
1556@end ignore
diff --git a/doc/lispref/vol2.texi b/doc/lispref/vol2.texi
index 44052e5bd5d..59222ad00e2 100644
--- a/doc/lispref/vol2.texi
+++ b/doc/lispref/vol2.texi
@@ -27,7 +27,7 @@
27@c Version of the manual and of Emacs. 27@c Version of the manual and of Emacs.
28@c Please remember to update the edition number in README as well. 28@c Please remember to update the edition number in README as well.
29@set VERSION 3.0 29@set VERSION 3.0
30@set EMACSVER 24.0.50 30@include emacsver.texi
31@set DATE July 2009 31@set DATE July 2009
32 32
33@dircategory Emacs 33@dircategory Emacs
@@ -1549,7 +1549,3 @@ Object Internals
1549 1549
1550 1550
1551These words prevent "local variables" above from confusing Emacs. 1551These words prevent "local variables" above from confusing Emacs.
1552
1553@ignore
1554 arch-tag: dfdbecf8-fec2-49c1-8427-3e8ac8b0b849
1555@end ignore