comparison doc/lispref/os.texi @ 111006:0f088c6a2e80

Document changes made in revno 101949. os.texi (Dynamic Libraries): New node, with slightly modified text deleted from "Image Formats". (System Interface): Add @menu entry for "Dynamic Libraries". display.texi (Image Formats): Remove description of image-library-alist. (Renamed in revno 101949.)
author Eli Zaretskii <eliz@gnu.org>
date Fri, 15 Oct 2010 12:49:07 +0200
parents 0554c384e09f
children 417b1e4d63cd
comparison
equal deleted inserted replaced
111005:e172bc1db402 111006:0f088c6a2e80
35 * Terminal Output:: Controlling and recording terminal output. 35 * Terminal Output:: Controlling and recording terminal output.
36 * Sound Output:: Playing sounds on the computer's speaker. 36 * Sound Output:: Playing sounds on the computer's speaker.
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
43 @section Starting Up Emacs 44 @section Starting Up Emacs
44 45
2184 (insert \"I am restored\"))") 2185 (insert \"I am restored\"))")
2185 nil) 2186 nil)
2186 @end group 2187 @end group
2187 @end example 2188 @end example
2188 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
2195 demand, when its facilities are first needed. Emacs supports such
2196 on-demand loading of support libraries for some of its features.
2197
2198 @defvar dynamic-library-alist
2199 This is an alist of dynamic libraries and external library files
2200 implementing them.
2201
2202 Each element is a list of the form
2203 @w{@code{(@var{library} @var{files}@dots{})}}, where the @code{car} is
2204 a symbol representing a supported external library, and the rest are
2205 strings giving alternate filenames for that library.
2206
2207 Emacs tries to load the library from the files in the order they
2208 appear in the list; if none is found, the running session of Emacs
2209 won't have access to that library, and the features that depend on the
2210 library will be unavailable.
2211
2212 Image support on some platforms uses this facility. Here's an example
2213 of 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
2229 Note that image types @code{pbm} and @code{xbm} do not need entries in
2230 this variable because they do not depend on external libraries and are
2231 always available in Emacs.
2232
2233 Also note that this variable is not meant to be a generic facility for
2234 accessing external libraries; only those already known by Emacs can
2235 be loaded through it.
2236
2237 This variable is ignored if the given @var{library} is statically
2238 linked into Emacs.
2239 @end defvar
2240
2189 @ignore 2241 @ignore
2190 arch-tag: 8378814a-30d7-467c-9615-74a80b9988a7 2242 arch-tag: 8378814a-30d7-467c-9615-74a80b9988a7
2191 @end ignore 2243 @end ignore