diff options
author | Juanma Barranquero <[email protected]> | 2010-10-15 12:49:07 +0200 |
---|---|---|
committer | Eli Zaretskii <[email protected]> | 2010-10-15 12:49:07 +0200 |
commit | 00f113eb562a8f0c1b38592bf8346d4ecf942b2c (patch) | |
tree | eef5419b5eb5e59a94b457351b724a12a8050a73 /doc | |
parent | 68f6bd17e5ecd16961702fc8c66639d589baadee (diff) |
Document changes made in 2010-10-13T14:50:[email protected].
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 2010-10-13T14:50:[email protected].)
Diffstat (limited to 'doc')
-rw-r--r-- | doc/lispref/ChangeLog | 9 | ||||
-rw-r--r-- | doc/lispref/display.texi | 28 | ||||
-rw-r--r-- | doc/lispref/os.texi | 52 |
3 files changed, 67 insertions, 22 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index a5f3ce3437..f5878dfed7 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,12 @@ +2010-10-15 Eli Zaretskii <[email protected]> + + * 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 2010-10-13T14:50:[email protected].) + 2010-10-12 Glenn Morris <[email protected]> * book-spine.texinfo: Rename to book-spine.texi. diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index 037c334ab8..f4092cfa7e 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi @@ -4055,10 +4055,12 @@ displayed (@pxref{Display Feature Testing}). Emacs can display a number of different image formats; some of them are supported only if particular support libraries are installed on -your machine. In some environments, Emacs can load image -libraries on demand; if so, the variable @code{image-library-alist} -can be used to modify the set of known names for these dynamic -libraries (though it is not possible to add new image formats). +your machine. In some environments, Emacs can load support libraries +on demand; if so, the variable @code{dynamic-library-alist} +(@pxref{Dynamic Libraries}) can be used to modify the set of known +names for these dynamic libraries (though it is not possible to add +new image formats). Note that image types @code{pbm} and @code{xbm} +do not depend on external libraries and are always available in Emacs. The supported image formats include XBM, XPM (this requires the libraries @code{libXpm} version 3.4k and @code{libz}), GIF (requiring @@ -4082,24 +4084,6 @@ To know which image types are really available, use @code{image-type-available-p}. @end defvar -@defvar image-library-alist -This in an alist of image types vs external libraries needed to -display them. - -Each element is a list @code{(@var{image-type} @var{library}...)}, -where the car is a supported image format from @code{image-types}, and -the rest are strings giving alternate filenames for the corresponding -external libraries to load. - -Emacs tries to load the libraries in the order they appear on the -list; if none is loaded, the running session of Emacs won't support -the image type. @code{pbm} and @code{xbm} don't need to be listed; -they're always supported. - -This variable is ignored if the image libraries are statically linked -into Emacs. -@end defvar - @defun image-type-available-p type This function returns non-@code{nil} if image type @var{type} is available, i.e., if images of this type can be loaded and displayed in diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi index 8548ce0504..e99e3fe89d 100644 --- a/doc/lispref/os.texi +++ b/doc/lispref/os.texi @@ -37,6 +37,7 @@ terminal and the screen. * X11 Keysyms:: Operating on key symbols for X Windows. * Batch Mode:: Running Emacs without terminal interaction. * Session Management:: Saving and restoring state with X Session Management. +* Dynamic Libraries:: On-demand loading of support libraries. @end menu @node Starting Up @@ -2186,6 +2187,57 @@ Emacs is restarted by the session manager. @end group @end example +@node Dynamic Libraries +@section Dynamically Loaded Libraries +@cindex dynamic libraries + + A @dfn{dynamically loaded library} is a library that is loaded on +demand, when its facilities are first needed. Emacs supports such +on-demand loading of support libraries for some of its features. + +@defvar dynamic-library-alist +This is an alist of dynamic libraries and external library files +implementing them. + +Each element is a list of the form +@w{@code{(@var{library} @var{files}@dots{})}}, where the @code{car} is +a symbol representing a supported external library, and the rest are +strings giving alternate filenames for that library. + +Emacs tries to load the library from the files in the order they +appear in the list; if none is found, the running session of Emacs +won't have access to that library, and the features that depend on the +library will be unavailable. + +Image support on some platforms uses this facility. Here's an example +of setting this variable for supporting images on MS-Windows: + +@lisp +(setq dynamic-library-alist + '((xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll") + (png "libpng12d.dll" "libpng12.dll" "libpng.dll" + "libpng13d.dll" "libpng13.dll") + (jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll") + (tiff "libtiff3.dll" "libtiff.dll") + (gif "giflib4.dll" "libungif4.dll" "libungif.dll") + (svg "librsvg-2-2.dll") + (gdk-pixbuf "libgdk_pixbuf-2.0-0.dll") + (glib "libglib-2.0-0.dll") + (gobject "libgobject-2.0-0.dll"))) +@end lisp + +Note that image types @code{pbm} and @code{xbm} do not need entries in +this variable because they do not depend on external libraries and are +always available in Emacs. + +Also note that this variable is not meant to be a generic facility for +accessing external libraries; only those already known by Emacs can +be loaded through it. + +This variable is ignored if the given @var{library} is statically +linked into Emacs. +@end defvar + @ignore arch-tag: 8378814a-30d7-467c-9615-74a80b9988a7 @end ignore |