annotate man/lispref/lispref.texi @ 5157:1fae11d56ad2

redo memory-usage mechanism, add way of dynamically initializing Lisp objects -------------------- ChangeLog entries follow: -------------------- lisp/ChangeLog addition: 2010-03-18 Ben Wing <ben@xemacs.org> * diagnose.el (show-memory-usage): Rewrite to take into account API changes in memory-usage functions. src/ChangeLog addition: 2010-03-18 Ben Wing <ben@xemacs.org> * alloc.c: * alloc.c (disksave_object_finalization_1): * alloc.c (lisp_object_storage_size): * alloc.c (listu): * alloc.c (listn): * alloc.c (Fobject_memory_usage_stats): * alloc.c (compute_memusage_stats_length): * alloc.c (Fobject_memory_usage): * alloc.c (Ftotal_object_memory_usage): * alloc.c (malloced_storage_size): * alloc.c (common_init_alloc_early): * alloc.c (reinit_alloc_objects_early): * alloc.c (reinit_alloc_early): * alloc.c (init_alloc_once_early): * alloc.c (syms_of_alloc): * alloc.c (reinit_vars_of_alloc): * buffer.c: * buffer.c (struct buffer_stats): * buffer.c (compute_buffer_text_usage): * buffer.c (compute_buffer_usage): * buffer.c (buffer_memory_usage): * buffer.c (buffer_objects_create): * buffer.c (syms_of_buffer): * buffer.c (vars_of_buffer): * console-impl.h (struct console_methods): * dynarr.c (Dynarr_memory_usage): * emacs.c (main_1): * events.c (clear_event_resource): * extents.c: * extents.c (compute_buffer_extent_usage): * extents.c (extent_objects_create): * extents.h: * faces.c: * faces.c (compute_face_cachel_usage): * faces.c (face_objects_create): * faces.h: * general-slots.h: * glyphs.c: * glyphs.c (compute_glyph_cachel_usage): * glyphs.c (glyph_objects_create): * glyphs.h: * lisp.h: * lisp.h (struct usage_stats): * lrecord.h: * lrecord.h (enum lrecord_type): * lrecord.h (struct lrecord_implementation): * lrecord.h (MC_ALLOC_CALL_FINALIZER_FOR_DISKSAVE): * lrecord.h (DEFINE_DUMPABLE_LISP_OBJECT): * lrecord.h (DEFINE_DUMPABLE_SIZABLE_LISP_OBJECT): * lrecord.h (DEFINE_DUMPABLE_FROB_BLOCK_LISP_OBJECT): * lrecord.h (DEFINE_DUMPABLE_FROB_BLOCK_SIZABLE_LISP_OBJECT): * lrecord.h (DEFINE_DUMPABLE_INTERNAL_LISP_OBJECT): * lrecord.h (DEFINE_DUMPABLE_SIZABLE_INTERNAL_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_SIZABLE_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_FROB_BLOCK_SIZABLE_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_INTERNAL_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_SIZABLE_INTERNAL_LISP_OBJECT): * lrecord.h (MAKE_LISP_OBJECT): * lrecord.h (DEFINE_DUMPABLE_MODULE_LISP_OBJECT): * lrecord.h (DEFINE_DUMPABLE_MODULE_SIZABLE_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_MODULE_LISP_OBJECT): * lrecord.h (DEFINE_NODUMP_MODULE_SIZABLE_LISP_OBJECT): * lrecord.h (MAKE_MODULE_LISP_OBJECT): * lrecord.h (INIT_LISP_OBJECT): * lrecord.h (INIT_MODULE_LISP_OBJECT): * lrecord.h (UNDEF_LISP_OBJECT): * lrecord.h (UNDEF_MODULE_LISP_OBJECT): * lrecord.h (DECLARE_LISP_OBJECT): * lrecord.h (DECLARE_MODULE_API_LISP_OBJECT): * lrecord.h (DECLARE_MODULE_LISP_OBJECT): * lstream.c: * lstream.c (syms_of_lstream): * lstream.c (vars_of_lstream): * marker.c: * marker.c (compute_buffer_marker_usage): * mc-alloc.c (mc_alloced_storage_size): * mc-alloc.h: * mule-charset.c: * mule-charset.c (struct charset_stats): * mule-charset.c (compute_charset_usage): * mule-charset.c (charset_memory_usage): * mule-charset.c (mule_charset_objects_create): * mule-charset.c (syms_of_mule_charset): * mule-charset.c (vars_of_mule_charset): * redisplay.c: * redisplay.c (compute_rune_dynarr_usage): * redisplay.c (compute_display_block_dynarr_usage): * redisplay.c (compute_glyph_block_dynarr_usage): * redisplay.c (compute_display_line_dynarr_usage): * redisplay.c (compute_line_start_cache_dynarr_usage): * redisplay.h: * scrollbar-gtk.c (gtk_compute_scrollbar_instance_usage): * scrollbar-msw.c (mswindows_compute_scrollbar_instance_usage): * scrollbar-x.c (x_compute_scrollbar_instance_usage): * scrollbar.c (compute_scrollbar_instance_usage): * scrollbar.h: * symbols.c: * symbols.c (reinit_symbol_objects_early): * symbols.c (init_symbols_once_early): * symbols.c (reinit_symbols_early): * symbols.c (defsymbol_massage_name_1): * symsinit.h: * ui-gtk.c: * ui-gtk.c (emacs_gtk_object_getprop): * ui-gtk.c (emacs_gtk_object_putprop): * ui-gtk.c (ui_gtk_objects_create): * unicode.c (compute_from_unicode_table_size_1): * unicode.c (compute_to_unicode_table_size_1): * unicode.c (compute_from_unicode_table_size): * unicode.c (compute_to_unicode_table_size): * window.c: * window.c (struct window_stats): * window.c (compute_window_mirror_usage): * window.c (compute_window_usage): * window.c (window_memory_usage): * window.c (window_objects_create): * window.c (syms_of_window): * window.c (vars_of_window): * window.h: Redo memory-usage mechanism, make it general; add way of dynamically initializing Lisp object types -- OBJECT_HAS_METHOD(), similar to CONSOLE_HAS_METHOD(). (1) Create OBJECT_HAS_METHOD(), OBJECT_HAS_PROPERTY() etc. for specifying that a Lisp object type has a particular method or property. Call such methods with OBJECT_METH, MAYBE_OBJECT_METH, OBJECT_METH_OR_GIVEN; retrieve properties with OBJECT_PROPERTY. Methods that formerly required a DEFINE_*GENERAL_LISP_OBJECT() to specify them (getprop, putprop, remprop, plist, disksave) now instead use the dynamic-method mechanism. The main benefit of this is that new methods or properties can be added without requiring that the declaration statements of all existing methods be modified. We have to make the `struct lrecord_implementation' non-const, but I don't think this should have any effect on speed -- the only possible method that's really speed-critical is the mark method, and we already extract those out into a separate (non-const) array for increased cache locality. Object methods need to be reinitialized after pdump, so we put them in separate functions such as face_objects_create(), extent_objects_create() and call them appropriately from emacs.c The only current object property (`memusage_stats_list') that objects can specify is a Lisp object and gets staticpro()ed so it only needs to be set during dump time, but because it references symbols that might not exist in a syms_of_() function, we initialize it in vars_of_(). There is also an object property (`num_extra_memusage_stats') that is automatically initialized based on `memusage_stats_list'; we do that in reinit_vars_of_alloc(), which is called after all vars_of_() functions are called. `disksaver' method was renamed `disksave' to correspond with the name normally given to the function (e.g. disksave_lstream()). (2) Generalize the memory-usage mechanism in `buffer-memory-usage', `window-memory-usage', `charset-memory-usage' into an object-type- specific mechanism called by a single function `object-memory-usage'. (Former function `object-memory-usage' renamed to `total-object-memory-usage'). Generalize the mechanism of different "slices" so that we can have different "classes" of memory described and different "slices" onto each class; `t' separates classes, `nil' separates slices. Currently we have three classes defined: the memory of an object itself, non-Lisp-object memory associated with the object (e.g. arrays or dynarrs stored as fields in the object), and Lisp-object memory associated with the object (other internal Lisp objects stored in the object). This isn't completely finished yet and we might need to further separate the "other internal Lisp objects" class into two classes. The memory-usage mechanism uses a `struct usage_stats' (renamed from `struct overhead_stats') to describe a malloc-view onto a set of allocated memory (listing how much was requested and various types of overhead) and a more general `struct generic_usage_stats' (with a `struct usage_stats' in it) to hold all statistics about object memory. `struct generic_usage_stats' contains an array of 32 Bytecounts, which are statistics of unspecified semantics. The intention is that individual types declare a corresponding struct (e.g. `struct window_stats') with the same structure but with specific fields in place of the array, corresponding to specific statistics. The number of such statistics is an object property computed from the list of tags (Lisp symbols describing the statistics) stored in `memusage_stats_list'. The idea here is to allow particular object types to customize the number and semantics of the statistics where completely avoiding consing. This doesn't matter so much yet, but the intention is to have the memory usage of all objects computed at the end of GC, at the same time as other statistics are currently computed. The values for all statistics for a single type would be added up to compute aggregate values for all objects of a specific type. To make this efficient, we can't allow any memory allocation at all. (3) Create some additional functions for creating lists that specify the elements directly as args rather than indirectly through an array: listn() (number of args given), listu() (list terminated by Qunbound). (4) Delete a bit of remaining unused C window_config stuff, also unused lrecord_type_popup_data.
author Ben Wing <ben@xemacs.org>
date Thu, 18 Mar 2010 10:50:06 -0500
parents 755ae5b97edb
children 9fae6227ede5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 \input texinfo @c -*-texinfo-*-
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 @c %**start of header
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 @setfilename ../../info/lispref.info
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 @c @smallbook
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 @settitle XEmacs Lisp Reference Manual
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 @c %**end of header
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 @ifinfo
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 @dircategory XEmacs Editor
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 @direntry
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 * Lispref: (lispref). XEmacs Lisp Reference Manual.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 @end direntry
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 Edition History:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 GNU Emacs Lisp Reference Manual Second Edition (v2.01), May 1993
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 GNU Emacs Lisp Reference Manual Further Revised (v2.02), August 1993
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 Lucid Emacs Lisp Reference Manual (for 19.10) First Edition, March 1994
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 XEmacs Lisp Programmer's Manual (for 19.12) Second Edition, April 1995
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 GNU Emacs Lisp Reference Manual v2.4, June 1995
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 XEmacs Lisp Programmer's Manual (for 19.13) Third Edition, July 1995
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 XEmacs Lisp Reference Manual (for 19.14 and 20.0) v3.1, March 1996
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 XEmacs Lisp Reference Manual (for 19.15 and 20.1, 20.2, 20.3) v3.2, April, May, November 1997
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 XEmacs Lisp Reference Manual (for 21.0) v3.3, April 1998
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 @c Please REMEMBER to update edition number in *four* places in this file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 @c and also in *one* place in intro.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 Copyright (C) 1994, 1995 Sun Microsystems, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 Copyright (C) 1995, 1996 Ben Wing.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 Permission is granted to make and distribute verbatim copies of this
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 manual provided the copyright notice and this permission notice are
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 preserved on all copies.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 @ignore
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 Permission is granted to process this file through TeX and print the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39 results, provided the printed document carries copying permission notice
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 identical to this one except for the removal of this paragraph (this
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 paragraph not being relevant to the printed manual).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 @end ignore
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 Permission is granted to copy and distribute modified versions of this
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 manual under the conditions for verbatim copying, provided that the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 entire resulting derived work is distributed under the terms of a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 permission notice identical to this one.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 Permission is granted to copy and distribute translations of this manual
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 into another language, under the above conditions for modified versions,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 except that this permission notice may be stated in a translation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 approved by the Foundation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 Permission is granted to copy and distribute modified versions of this
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 manual under the conditions for verbatim copying, provided also that the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 section entitled ``GNU General Public License'' is included exactly as
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 in the original, and provided that the entire resulting derived work is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 distributed under the terms of a permission notice identical to this
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 one.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 Permission is granted to copy and distribute translations of this manual
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 into another language, under the above conditions for modified versions,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 except that the section entitled ``GNU General Public License'' may be
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 included in a translation approved by the Free Software Foundation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65 instead of in the original English.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
66 @end ifinfo
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
67
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 @c Combine indices.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 @synindex cp fn
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 @syncodeindex vr fn
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 @syncodeindex ky fn
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 @syncodeindex pg fn
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 @syncodeindex tp fn
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
75 @setchapternewpage odd
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 @finalout
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 @titlepage
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 @title XEmacs Lisp Reference Manual
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 @c The edition number appears in several places in this file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 @c and also in the file intro.texi.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 @c This manual documents XEmacs 19.14 and 20.0 and was based on the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 @c documentation for FSF Emacs 19.29 (v2.4).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 @subtitle Version 3.3 (for XEmacs 21.0), April 1998
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 @author by Ben Wing
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 @author
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 @author Based on the GNU Emacs Lisp Reference Manual
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 @author by Bil Lewis, Dan LaLiberte, Richard Stallman
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 @author and the GNU Manual Group
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91 @page
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 @vskip 0pt plus 1filll
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93 Copyright @copyright{} 1990, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94 Copyright @copyright{} 1994, 1995 Sun Microsystems, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 Copyright @copyright{} 1995, 1996 Ben Wing.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 @sp 2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97 Version 3.3 @*
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 Revised for XEmacs Versions 21.0,@*
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99 April 1998.@*
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101 Permission is granted to make and distribute verbatim copies of this
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 manual provided the copyright notice and this permission notice are
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 preserved on all copies.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 Permission is granted to copy and distribute modified versions of this
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 manual under the conditions for verbatim copying, provided also that the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107 section entitled ``GNU General Public License'' is included
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 exactly as in the original, and provided that the entire resulting
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109 derived work is distributed under the terms of a permission notice
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 identical to this one.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112 Permission is granted to copy and distribute translations of this manual
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 into another language, under the above conditions for modified versions,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 except that the section entitled ``GNU General Public License'' may be
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 included in a translation approved by the Free Software Foundation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 instead of in the original English.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118 Cover art by Etienne Suvasa.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 @end titlepage
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 @page
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 @node Top, Copying, (dir), (dir)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
123
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
124 @ifinfo
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125 This Info file contains the third edition of the XEmacs Lisp
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126 Reference Manual, corresponding to XEmacs version 21.0.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
127 @end ifinfo
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
129 @menu
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130 * Copying:: Conditions for copying and changing XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 * Introduction:: Introduction and conventions used.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132
693
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
133 * Packaging:: Lisp library administrative infrastructure.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
134
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 * Lisp Data Types:: Data types of objects in XEmacs Lisp.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 * Numbers:: Numbers and arithmetic functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 * Strings and Characters:: Strings, and functions that work on them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 * Lists:: Lists, cons cells, and related functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139 * Sequences Arrays Vectors:: Lists, strings and vectors are called sequences.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 Certain functions act on any kind of sequence.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 The description of vectors is here as well.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142 * Symbols:: Symbols represent names, uniquely.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
144 * Evaluation:: How Lisp expressions are evaluated.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145 * Control Structures:: Conditionals, loops, nonlocal exits.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
146 * Variables:: Using symbols in programs to stand for values.
2492
6780963faf78 [xemacs-hg @ 2005-01-21 09:43:09 by aidan]
aidan
parents: 2182
diff changeset
147
6780963faf78 [xemacs-hg @ 2005-01-21 09:43:09 by aidan]
aidan
parents: 2182
diff changeset
148 * Functions and Commands:: A function is a Lisp program that can be
6780963faf78 [xemacs-hg @ 2005-01-21 09:43:09 by aidan]
aidan
parents: 2182
diff changeset
149 invoked from other functions.
6780963faf78 [xemacs-hg @ 2005-01-21 09:43:09 by aidan]
aidan
parents: 2182
diff changeset
150
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
151 * Macros:: Macros are a way to extend the Lisp language.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 * Customization:: Writing customization declarations.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154 * Loading:: Reading files of Lisp code into Lisp.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155 * Byte Compilation:: Compilation makes programs run faster.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
156 * Debugging:: Tools and tips for debugging Lisp programs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
157
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 * Read and Print:: Converting Lisp objects to text and back.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159 * Minibuffers:: Using the minibuffer to read input.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 * Command Loop:: How the editor command loop works,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161 and how you can call its subroutines.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 * Keymaps:: Defining the bindings from keys to commands.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 * Menus:: Defining pull-down and pop-up menus.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 * Dialog Boxes:: Creating dialog boxes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165 * Toolbar:: Controlling the toolbar.
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
166 * Gutter:: Controlling the gutter.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167 * Scrollbars:: Controlling the scrollbars.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
168 * Drag and Drop:: Generic API to inter-application communication
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169 via specific protocols.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170 * Modes:: Defining major and minor modes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
171 * Documentation:: Writing and using documentation strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
172
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
173 * Files:: Accessing files.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
174 * Backups and Auto-Saving:: Controlling how backups and auto-save
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175 files are made.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
176 * Buffers:: Creating and using buffer objects.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
177 * Windows:: Manipulating windows and displaying buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178 * Frames:: Making multiple X windows.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
179 * Consoles and Devices:: Opening frames on multiple TTY's or X displays.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
180 * Positions:: Buffer positions and motion functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181 * Markers:: Markers represent positions and update
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
182 automatically when the text is changed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184 * Text:: Examining and changing text in buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
185 * Searching and Matching:: Searching buffers for strings or regexps.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186 * Syntax Tables:: The syntax table controls word and list parsing.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187 * Abbrevs:: How Abbrev mode works, and its data structures.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
189 * Extents:: Extents are regions of text with particular
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
190 display characteristics.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
191 * Specifiers:: How faces and glyphs are specified.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
192 * Faces and Window-System Objects::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
193 A face is a set of display characteristics
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
194 specifying how text is to be displayed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
195 * Glyphs:: General interface to pixmaps displayed in a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
196 buffer or frame.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
197 * Annotations:: Higher-level interface to glyphs in a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
198 * Display:: Parameters controlling screen usage.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
199 The bell. Waiting for input.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
200
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
201 * Hash Tables:: Fast data structures for mappings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
202 * Range Tables:: Keeping track of ranges of numbers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
203 * Databases:: An interface to standard DBM and DB databases.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
204
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
205 * Processes:: Running and communicating with subprocesses.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
206 * System Interface:: Getting the user id, system type, environment
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
207 variables, and other such things.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
208 * X-Windows:: Functions specific to the X Window System.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
209 * ToolTalk Support:: Interfacing with the ToolTalk message service.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
210 * LDAP Support:: Interfacing with the Lightweight Directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
211 Access Protocol.
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
212 * PostgreSQL Support:: Interfacing to the PostgreSQL libpq library.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
213 * Internationalization:: How Emacs supports different languages and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
214 cultural conventions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
215 * MULE:: Specifics of the Asian-language support.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
216
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
217 Appendices
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
218
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
219 * Tips:: Advice for writing Lisp programs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
220 * Building XEmacs and Object Allocation::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
221 Behind-the-scenes information about XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
222 * Standard Errors:: List of all error symbols.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
223 * Standard Buffer-Local Variables:: List of variables local in all buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
224 * Standard Keymaps:: List of standard keymaps.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
225 * Standard Hooks:: List of standard hook variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
226
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
227 * Index:: Index including concepts, functions, variables,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
228 and other terms.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
229
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
230 --- The Detailed Node Listing ---
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
231
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
232 Here are other nodes that are inferiors of those already listed,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
233 mentioned here so you can get to them in one step:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
234
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
235 Introduction
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
236
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
237 * Caveats:: Flaws and a request for help.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
238 * Lisp History:: XEmacs Lisp is descended from Maclisp.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
239 * Conventions:: How the manual is formatted.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
240 * Acknowledgements:: The authors, editors, and sponsors of this manual.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
241
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
242 Conventions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
243
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
244 * Some Terms:: Explanation of terms we use in this manual.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
245 * nil and t:: How the symbols @code{nil} and @code{t} are used.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
246 * Evaluation Notation:: The format we use for examples of evaluation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
247 * Printing Notation:: The format we use for examples that print output.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
248 * Error Messages:: The format we use for examples of errors.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
249 * Buffer Text Notation:: The format we use for buffer contents in examples.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
250 * Format of Descriptions:: Notation for describing functions, variables, etc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
251
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
252 Format of Descriptions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
253
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
254 * A Sample Function Description::
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
255 * A Sample Variable Description::
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
256
693
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
257 Packaging
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
258
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
259 * Package Overview:: Lisp Libraries and Packages.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
260 * Package Terminology:: Basic stuff.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
261 * Building Packages:: Turn packaged source into a tarball.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
262 * Local.rules File:: Tell the XEmacs Packaging System about your host.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
263 * Creating Packages:: Tell the XEmacs Packaging System about your package.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
264 * Issues::
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
265
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
266 Package Overview
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
267
761
c35d5f033651 [xemacs-hg @ 2002-03-03 09:09:27 by adrian]
adrian
parents: 707
diff changeset
268 * The User View::
c35d5f033651 [xemacs-hg @ 2002-03-03 09:09:27 by adrian]
adrian
parents: 707
diff changeset
269 * The Library Maintainer View::
c35d5f033651 [xemacs-hg @ 2002-03-03 09:09:27 by adrian]
adrian
parents: 707
diff changeset
270 * The Package Release Engineer View::
693
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
271
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
272 The Library Maintainer's View
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
273
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
274 * Infrastructure:: Global Makefiles and common rules.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
275 * Control Files:: Package-specific Makefiles and administrative files.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
276 * Obtaining:: Obtaining the XEmacs Packaging System and utilities.
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
277
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
278 Creating Packages
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
279
1648
712931b4b71d [xemacs-hg @ 2003-08-27 18:06:54 by youngs]
youngs
parents: 761
diff changeset
280 * package-info.in:: package-info.in
712931b4b71d [xemacs-hg @ 2003-08-27 18:06:54 by youngs]
youngs
parents: 761
diff changeset
281 * Makefile:: @file{Makefile}
693
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
282 * Makefile Targets::
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
283
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
284 Lisp Data Types
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
285
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
286 * Printed Representation:: How Lisp objects are represented as text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
287 * Comments:: Comments and their formatting conventions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
288 * Programming Types:: Types found in all Lisp systems.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
289 * Editing Types:: Types specific to XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
290 * Type Predicates:: Tests related to types.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
291 * Equality Predicates:: Tests of equality between any two objects.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
292
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
293 Programming Types
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
294
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
295 * Integer Type:: Numbers without fractional parts.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
296 * Floating Point Type:: Numbers with fractional parts and with a large range.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
297 * Character Type:: The representation of letters, numbers and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
298 control characters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
299 * Sequence Type:: Both lists and arrays are classified as sequences.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
300 * Cons Cell Type:: Cons cells, and lists (which are made from cons cells).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
301 * Array Type:: Arrays include strings and vectors.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
302 * String Type:: An (efficient) array of characters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
303 * Vector Type:: One-dimensional arrays.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
304 * Symbol Type:: A multi-use object that refers to a function,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
305 variable, property list, or itself.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
306 * Function Type:: A piece of executable code you can call from elsewhere.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
307 * Macro Type:: A method of expanding an expression into another
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
308 expression, more fundamental but less pretty.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
309 * Primitive Function Type:: A function written in C, callable from Lisp.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
310 * Compiled-Function Type:: A function written in Lisp, then compiled.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
311 * Autoload Type:: A type used for automatically loading seldom-used
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
312 functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
313
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
314 Cons Cell Type
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
315
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
316 * Dotted Pair Notation:: An alternative syntax for lists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
317 * Association List Type:: A specially constructed list.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
318
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
319 Editing Types
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
320
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
321 * Buffer Type:: The basic object of editing.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
322 * Window Type:: What makes buffers visible.
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
323 * Window Configuration Type:: Save what the screen looks like.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
324 * Marker Type:: A position in a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
325 * Process Type:: A process running on the underlying OS.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
326 * Stream Type:: Receive or send characters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
327 * Keymap Type:: What function a keystroke invokes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
328 * Syntax Table Type:: What a character means.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
329
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
330 Numbers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
331
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
332 * Integer Basics:: Representation and range of integers.
2028
2ba4f06a264d [xemacs-hg @ 2004-04-19 08:02:27 by stephent]
stephent
parents: 1869
diff changeset
333 * Ratio Basics:: Representation and range of rational numbers.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
334 * Float Basics:: Representation and range of floating point.
2028
2ba4f06a264d [xemacs-hg @ 2004-04-19 08:02:27 by stephent]
stephent
parents: 1869
diff changeset
335 * The Bignum Extension:: Arbitrary precision integers, ratios, and floats.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
336 * Predicates on Numbers:: Testing for numbers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
337 * Comparison of Numbers:: Equality and inequality predicates.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
338 * Arithmetic Operations:: How to add, subtract, multiply and divide.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
339 * Bitwise Operations:: Logical and, or, not, shifting.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
340 * Numeric Conversions:: Converting float to integer and vice versa.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
341 * Math Functions:: Trig, exponential and logarithmic functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
342 * Random Numbers:: Obtaining random integers, predictable or not.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
343
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
344 Strings and Characters
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
345
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 428
diff changeset
346 * String Basics:: Basic properties of strings and characters.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
347 * Predicates for Strings:: Testing whether an object is a string or char.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
348 * Creating Strings:: Functions to allocate new strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
349 * Predicates for Characters:: Testing whether an object is a character.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
350 * Character Codes:: Each character has an equivalent integer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
351 * Text Comparison:: Comparing characters or strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
352 * String Conversion:: Converting characters or strings and vice versa.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
353 * Modifying Strings:: Changing characters in a string.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
354 * String Properties:: Additional information attached to strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
355 * Formatting Strings:: @code{format}: XEmacs's analog of @code{printf}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
356 * Character Case:: Case conversion functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
357 * Char Tables:: Mapping from characters to Lisp objects.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
358 * Case Tables:: Customizing case conversion.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
359
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
360 Lists
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
361
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
362 * Cons Cells:: How lists are made out of cons cells.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
363 * Lists as Boxes:: Graphical notation to explain lists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
364 * List-related Predicates:: Is this object a list? Comparing two lists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
365 * List Elements:: Extracting the pieces of a list.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
366 * Building Lists:: Creating list structure.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
367 * Modifying Lists:: Storing new pieces into an existing list.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
368 * Sets And Lists:: A list can represent a finite mathematical set.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
369 * Association Lists:: A list can represent a finite relation or mapping.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
370 * Property Lists:: A different way to represent a finite mapping.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
371 * Weak Lists:: A list with special garbage-collection behavior.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
372
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
373 Modifying Existing List Structure
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
374
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
375 * Setcar:: Replacing an element in a list.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
376 * Setcdr:: Replacing part of the list backbone.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
377 This can be used to remove or add elements.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
378 * Rearrangement:: Reordering the elements in a list; combining lists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
379
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
380 Sequences, Arrays, and Vectors
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
381
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
382 * Sequence Functions:: Functions that accept any kind of sequence.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
383 * Arrays:: Characteristics of arrays in XEmacs Lisp.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
384 * Array Functions:: Functions specifically for arrays.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
385 * Vectors:: Functions specifically for vectors.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
386
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
387 Symbols
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
388
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
389 * Symbol Components:: Symbols have names, values, function definitions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
390 and property lists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
391 * Definitions:: A definition says how a symbol will be used.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
392 * Creating Symbols:: How symbols are kept unique.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
393 * Symbol Properties:: Each symbol has a property list
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
394 for recording miscellaneous information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
395
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
396 Evaluation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
397
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
398 * Intro Eval:: Evaluation in the scheme of things.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
399 * Eval:: How to invoke the Lisp interpreter explicitly.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
400 * Forms:: How various sorts of objects are evaluated.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
401 * Quoting:: Avoiding evaluation (to put constants in
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
402 the program).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
403
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
404 Kinds of Forms
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
405
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
406 * Self-Evaluating Forms:: Forms that evaluate to themselves.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
407 * Symbol Forms:: Symbols evaluate as variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
408 * Classifying Lists:: How to distinguish various sorts of list forms.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
409 * Function Forms:: Forms that call functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
410 * Macro Forms:: Forms that call macros.
4905
755ae5b97edb Change "special form" to "special operator" in our sources.
Aidan Kehoe <kehoea@parhasard.net>
parents: 2953
diff changeset
411 * Special Operators:: ``Special operators'' are idiosyncratic primitives,
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
412 most of them extremely important.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
413 * Autoloading:: Functions set up to load files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
414 containing their real definitions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
415
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
416 Control Structures
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
417
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
418 * Sequencing:: Evaluation in textual order.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
419 * Conditionals:: @code{if}, @code{cond}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
420 * Combining Conditions:: @code{and}, @code{or}, @code{not}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
421 * Iteration:: @code{while} loops.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
422 * Nonlocal Exits:: Jumping out of a sequence.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
423
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
424 Nonlocal Exits
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
425
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
426 * Catch and Throw:: Nonlocal exits for the program's own purposes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
427 * Examples of Catch:: Showing how such nonlocal exits can be written.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
428 * Errors:: How errors are signaled and handled.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
429 * Cleanups:: Arranging to run a cleanup form if an
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
430 error happens.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
431
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
432 Errors
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
433
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
434 * Signaling Errors:: How to report an error.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
435 * Processing of Errors:: What XEmacs does when you report an error.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
436 * Handling Errors:: How you can trap errors and continue execution.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
437 * Error Symbols:: How errors are classified for trapping them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
438
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
439 Variables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
440
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
441 * Global Variables:: Variable values that exist permanently, everywhere.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
442 * Constant Variables:: Certain "variables" have values that never change.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
443 * Local Variables:: Variable values that exist only temporarily.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
444 * Void Variables:: Symbols that lack values.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
445 * Defining Variables:: A definition says a symbol is used as a variable.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
446 * Accessing Variables:: Examining values of variables whose names
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
447 are known only at run time.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
448 * Setting Variables:: Storing new values in variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
449 * Variable Scoping:: How Lisp chooses among local and global values.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
450 * Buffer-Local Variables:: Variable values in effect only in one buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
451
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
452 Scoping Rules for Variable Bindings
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
453
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
454 * Scope:: Scope means where in the program a value
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
455 is visible. Comparison with other languages.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
456 * Extent:: Extent means how long in time a value exists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
457 * Impl of Scope:: Two ways to implement dynamic scoping.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
458 * Using Scoping:: How to use dynamic scoping carefully and
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
459 avoid problems.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
460
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
461 Buffer-Local Variables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
462
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
463 * Intro to Buffer-Local:: Introduction and concepts.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
464 * Creating Buffer-Local:: Creating and destroying buffer-local bindings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
465 * Default Value:: The default value is seen in buffers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
466 that don't have their own local values.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
467
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
468 Functions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
469
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
470 * What Is a Function:: Lisp functions vs primitives; terminology.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
471 * Lambda Expressions:: How functions are expressed as Lisp objects.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
472 * Function Names:: A symbol can serve as the name of a function.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
473 * Defining Functions:: Lisp expressions for defining functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
474 * Calling Functions:: How to use an existing function.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
475 * Mapping Functions:: Applying a function to each element of a list, etc.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
476 * Anonymous Functions:: Lambda-expressions are functions with no names.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
477 * Function Cells:: Accessing or setting the function definition
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
478 of a symbol.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
479 * Related Topics:: Cross-references to specific Lisp primitives
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
480 that have a special bearing on how
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
481 functions work.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
482
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
483 Lambda Expressions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
484
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
485 * Lambda Components:: The parts of a lambda expression.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
486 * Simple Lambda:: A simple example.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
487 * Argument List:: Details and special features of argument lists.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
488 * Function Documentation:: How to put documentation in a function.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
489
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
490 Macros
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
491
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
492 * Simple Macro:: A basic example.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
493 * Expansion:: How, when and why macros are expanded.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
494 * Compiling Macros:: How macros are expanded by the compiler.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
495 * Defining Macros:: How to write a macro definition.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
496 * Backquote:: Easier construction of list structure.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
497 * Problems with Macros:: Don't evaluate the macro arguments too many times.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
498 Don't hide the user's variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
499
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
500 Loading
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
501
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
502 * How Programs Do Loading:: The @code{load} function and others.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
503 * Autoload:: Setting up a function to autoload.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
504 * Named Features:: Loading a library if it isn't already loaded.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
505 * Repeated Loading:: Precautions about loading a file twice.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
506
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
507 Byte Compilation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
508
446
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
509 * Speed of Byte-Code:: An example of speedup from byte compilation.
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
510 * Compilation Functions:: Byte compilation functions.
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
511 * Docs and Compilation:: Dynamic loading of documentation strings.
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
512 * Dynamic Loading:: Dynamic loading of individual functions.
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
513 * Eval During Compile:: Code to be evaluated when you compile.
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
514 * Compiled-Function Objects:: The data type used for byte-compiled functions.
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
515 * Disassembly:: Disassembling byte-code; how to read byte-code.
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
516 * Different Behavior:: When compiled code gives different results.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
517
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
518 Debugging Lisp Programs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
519
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
520 * Debugger:: How the XEmacs Lisp debugger is implemented.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
521 * Syntax Errors:: How to find syntax errors.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
522 * Compilation Errors:: How to find errors that show up in
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
523 byte compilation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
524 * Edebug:: A source-level XEmacs Lisp debugger.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
525
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
526 The Lisp Debugger
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
527
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
528 * Error Debugging:: Entering the debugger when an error happens.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
529 * Function Debugging:: Entering it when a certain function is called.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
530 * Explicit Debug:: Entering it at a certain point in the program.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
531 * Using Debugger:: What the debugger does; what you see while in it.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
532 * Debugger Commands:: Commands used while in the debugger.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
533 * Invoking the Debugger:: How to call the function @code{debug}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
534 * Internals of Debugger:: Subroutines of the debugger, and global variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
535
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
536 Debugging Invalid Lisp Syntax
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
537
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
538 * Excess Open:: How to find a spurious open paren or missing close.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
539 * Excess Close:: How to find a spurious close paren or missing open.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
540
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
541 Reading and Printing Lisp Objects
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
542
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
543 * Streams Intro:: Overview of streams, reading and printing.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
544 * Input Streams:: Various data types that can be used as
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
545 input streams.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
546 * Input Functions:: Functions to read Lisp objects from text.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
547 * Output Streams:: Various data types that can be used as
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
548 output streams.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
549 * Output Functions:: Functions to print Lisp objects as text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
550
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
551 Minibuffers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
552
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
553 * Intro to Minibuffers:: Basic information about minibuffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
554 * Text from Minibuffer:: How to read a straight text string.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
555 * Object from Minibuffer:: How to read a Lisp object or expression.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
556 * Completion:: How to invoke and customize completion.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
557 * Yes-or-No Queries:: Asking a question with a simple answer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
558 * Minibuffer Misc:: Various customization hooks and variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
559
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
560 Completion
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
561
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
562 * Basic Completion:: Low-level functions for completing strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
563 (These are too low level to use the minibuffer.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
564 * Minibuffer Completion:: Invoking the minibuffer with completion.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
565 * Completion Commands:: Minibuffer commands that do completion.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
566 * High-Level Completion:: Convenient special cases of completion
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
567 (reading buffer name, file name, etc.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
568 * Reading File Names:: Using completion to read file names.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
569 * Programmed Completion:: Finding the completions for a given file name.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
570
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
571 Command Loop
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
572
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
573 * Command Overview:: How the command loop reads commands.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
574 * Defining Commands:: Specifying how a function should read arguments.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
575 * Interactive Call:: Calling a command, so that it will read arguments.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
576 * Command Loop Info:: Variables set by the command loop for you to examine.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
577 * Events:: What input looks like when you read it.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
578 * Reading Input:: How to read input events from the keyboard or mouse.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
579 * Waiting:: Waiting for user input or elapsed time.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
580 * Quitting:: How @kbd{C-g} works. How to catch or defer quitting.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
581 * Prefix Command Arguments:: How the commands to set prefix args work.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
582 * Recursive Editing:: Entering a recursive edit,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
583 and why you usually shouldn't.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
584 * Disabling Commands:: How the command loop handles disabled commands.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
585 * Command History:: How the command history is set up, and how accessed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
586 * Keyboard Macros:: How keyboard macros are implemented.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
587
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
588 Defining Commands
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
589
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
590 * Using Interactive:: General rules for @code{interactive}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
591 * Interactive Codes:: The standard letter-codes for reading arguments
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
592 in various ways.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
593 * Interactive Examples:: Examples of how to read interactive arguments.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
594
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
595 Events
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
596
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
597 * Event Types:: Events come in different types.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
598 * Event Contents:: What the contents of each event type are.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
599 * Event Predicates:: Querying whether an event is of a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
600 particular type.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
601 * Accessing Mouse Event Positions::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
602 Determining where a mouse event occurred,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
603 and over what.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
604 * Accessing Other Event Info:: Accessing non-positional event info.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
605 * Working With Events:: Creating, copying, and destroying events.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
606 * Converting Events:: Converting between events, keys, and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
607 characters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
608
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
609 Accessing Mouse Event Positions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
610
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
611 * Frame-Level Event Position Info::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
612 * Window-Level Event Position Info::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
613 * Event Text Position Info::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
614 * Event Glyph Position Info::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
615 * Event Toolbar Position Info::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
616 * Other Event Position Info::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
617
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
618 Reading Input
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
619
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
620 * Key Sequence Input:: How to read one key sequence.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
621 * Reading One Event:: How to read just one event.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
622 * Dispatching an Event:: What to do with an event once it has been read.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
623 * Quoted Character Input:: Asking the user to specify a character.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
624 * Peeking and Discarding:: How to reread or throw away input events.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
625
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
626 Keymaps
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
627
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
628 * Keymap Terminology:: Definitions of terms pertaining to keymaps.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
629 * Format of Keymaps:: What a keymap looks like as a Lisp object.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
630 * Creating Keymaps:: Functions to create and copy keymaps.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
631 * Inheritance and Keymaps:: How one keymap can inherit the bindings
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
632 of another keymap.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
633 * Key Sequences:: How to specify key sequences.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
634 * Prefix Keys:: Defining a key with a keymap as its definition.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
635 * Active Keymaps:: Each buffer has a local keymap
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
636 to override the standard (global) bindings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
637 Each minor mode can also override them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
638 * Key Lookup:: How extracting elements from keymaps works.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
639 * Functions for Key Lookup:: How to request key lookup.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
640 * Changing Key Bindings:: Redefining a key in a keymap.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
641 * Key Binding Commands:: Interactive interfaces for redefining keys.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
642 * Scanning Keymaps:: Looking through all keymaps, for printing help.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
643 * Other Keymap Functions:: Miscellaneous keymap functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
644
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
645 Menus
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
646
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
647 * Menu Format:: Format of a menu description.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
648 * Menubar Format:: How to specify a menubar.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
649 * Menubar:: Functions for controlling the menubar.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
650 * Modifying Menus:: Modifying a menu description.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
651 * Pop-Up Menus:: Functions for specifying pop-up menus.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
652 * Menu Filters:: Filter functions for the default menubar.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
653 * Buffers Menu:: The menu that displays the list of buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
654
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
655 Dialog Boxes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
656
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
657 * Dialog Box Format::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
658 * Dialog Box Functions::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
659
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
660 Toolbar
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
661
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
662 * Toolbar Intro:: An introduction.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
663 * Toolbar Descriptor Format:: How to create a toolbar.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
664 * Specifying the Toolbar:: Setting a toolbar.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
665 * Other Toolbar Variables:: Controlling the size of toolbars.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
666
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
667 Gutter
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
668
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
669 Scrollbars
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
670
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
671 Major and Minor Modes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
672
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
673 * Major Modes:: Defining major modes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
674 * Minor Modes:: Defining minor modes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
675 * Modeline Format:: Customizing the text that appears in the modeline.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
676 * Hooks:: How to use hooks; how to write code that
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
677 provides hooks.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
678
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
679 Major Modes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
680
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
681 * Major Mode Conventions:: Coding conventions for keymaps, etc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
682 * Example Major Modes:: Text mode and Lisp modes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
683 * Auto Major Mode:: How XEmacs chooses the major mode automatically.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
684 * Mode Help:: Finding out how to use a mode.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
685
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
686 Minor Modes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
687
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
688 * Minor Mode Conventions:: Tips for writing a minor mode.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
689 * Keymaps and Minor Modes:: How a minor mode can have its own keymap.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
690
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
691 Modeline Format
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
692
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
693 * Modeline Data:: The data structure that controls the modeline.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
694 * Modeline Variables:: Variables used in that data structure.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
695 * %-Constructs:: Putting information into a modeline.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
696
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
697 Documentation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
698
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
699 * Documentation Basics:: Good style for doc strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
700 Where to put them. How XEmacs stores them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
701 * Accessing Documentation:: How Lisp programs can access doc strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
702 * Keys in Documentation:: Substituting current key bindings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
703 * Describing Characters:: Making printable descriptions of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
704 non-printing characters and key sequences.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
705 * Help Functions:: Subroutines used by XEmacs help facilities.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
706
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
707 Files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
708
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
709 * Visiting Files:: Reading files into Emacs buffers for editing.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
710 * Saving Buffers:: Writing changed buffers back into files.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
711 * Reading from Files:: Reading files into other buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
712 * Writing to Files:: Writing new files from parts of buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
713 * File Locks:: Locking and unlocking files, to prevent
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
714 simultaneous editing by two people.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
715 * Information about Files:: Testing existence, accessibility, size of files.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
716 * Contents of Directories:: Getting a list of the files in a directory.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
717 * Changing File Attributes:: Renaming files, changing protection, etc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
718 * File Names:: Decomposing and expanding file names.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
719
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
720 Visiting Files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
721
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
722 * Visiting Functions:: The usual interface functions for visiting.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
723 * Subroutines of Visiting:: Lower-level subroutines that they use.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
724
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
725 Information about Files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
726
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
727 * Testing Accessibility:: Is a given file readable? Writable?
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
728 * Kinds of Files:: Is it a directory? A link?
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
729 * File Attributes:: How large is it? Any other names? Etc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
730
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
731 File Names
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
732
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
733 * File Name Components:: The directory part of a file name, and the rest.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
734 * Directory Names:: A directory's name as a directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
735 is different from its name as a file.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
736 * Relative File Names:: Some file names are relative to a
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
737 current directory.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
738 * File Name Expansion:: Converting relative file names to absolute ones.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
739 * Unique File Names:: Generating names for temporary files.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
740 * File Name Completion:: Finding the completions for a given file name.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
741
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
742 Backups and Auto-Saving
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
743
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
744 * Backup Files:: How backup files are made; how their names
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
745 are chosen.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
746 * Auto-Saving:: How auto-save files are made; how their
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
747 names are chosen.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
748 * Reverting:: @code{revert-buffer}, and how to customize
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
749 what it does.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
750
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
751 Backup Files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
752
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
753 * Making Backups:: How XEmacs makes backup files, and when.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
754 * Rename or Copy:: Two alternatives: renaming the old file
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
755 or copying it.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
756 * Numbered Backups:: Keeping multiple backups for each source file.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
757 * Backup Names:: How backup file names are computed; customization.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
758
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
759 Buffers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
760
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
761 * Buffer Basics:: What is a buffer?
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
762 * Buffer Names:: Accessing and changing buffer names.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
763 * Buffer File Name:: The buffer file name indicates which file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
764 is visited.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
765 * Buffer Modification:: A buffer is @dfn{modified} if it needs to be saved.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
766 * Modification Time:: Determining whether the visited file was changed
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
767 ``behind XEmacs's back''.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
768 * Read Only Buffers:: Modifying text is not allowed in a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
769 read-only buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
770 * The Buffer List:: How to look at all the existing buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
771 * Creating Buffers:: Functions that create buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
772 * Killing Buffers:: Buffers exist until explicitly killed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
773 * Current Buffer:: Designating a buffer as current
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
774 so primitives will access its contents.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
775
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
776 Windows
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
777
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
778 * Basic Windows:: Basic information on using windows.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
779 * Splitting Windows:: Splitting one window into two windows.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
780 * Deleting Windows:: Deleting a window gives its space to other windows.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
781 * Selecting Windows:: The selected window is the one that you edit in.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
782 * Cyclic Window Ordering:: Moving around the existing windows.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
783 * Buffers and Windows:: Each window displays the contents of a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
784 * Displaying Buffers:: Higher-lever functions for displaying a buffer
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
785 and choosing a window for it.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
786 * Window Point:: Each window has its own location of point.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
787 * Window Start:: The display-start position controls which text
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
788 is on-screen in the window.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
789 * Vertical Scrolling:: Moving text up and down in the window.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
790 * Horizontal Scrolling:: Moving text sideways on the window.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
791 * Size of Window:: Accessing the size of a window.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
792 * Resizing Windows:: Changing the size of a window.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
793 * Window Configurations:: Saving and restoring the state of the screen.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
794
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
795 Frames
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
796
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
797 * Creating Frames:: Creating additional frames.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
798 * Frame Properties:: Controlling frame size, position, font, etc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
799 * Frame Titles:: Automatic updating of frame titles.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
800 * Deleting Frames:: Frames last until explicitly deleted.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
801 * Finding All Frames:: How to examine all existing frames.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
802 * Frames and Windows:: A frame contains windows;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
803 display of text always works through windows.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
804 * Minibuffers and Frames:: How a frame finds the minibuffer to use.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
805 * Input Focus:: Specifying the selected frame.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
806 * Visibility of Frames:: Frames may be visible or invisible, or icons.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
807 * Raising and Lowering:: Raising a frame makes it hide other X windows;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
808 lowering it makes the others hide them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
809 * Frame Hooks:: Hooks for customizing frame behavior.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
810
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
811 Positions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
812
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
813 * Point:: The special position where editing takes place.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
814 * Motion:: Changing point.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
815 * Excursions:: Temporary motion and buffer changes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
816 * Narrowing:: Restricting editing to a portion of the buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
817
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
818 Motion
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
819
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
820 * Character Motion:: Moving in terms of characters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
821 * Word Motion:: Moving in terms of words.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
822 * Buffer End Motion:: Moving to the beginning or end of the buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
823 * Text Lines:: Moving in terms of lines of text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
824 * Screen Lines:: Moving in terms of lines as displayed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
825 * List Motion:: Moving by parsing lists and sexps.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
826 * Skipping Characters:: Skipping characters belonging to a certain set.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
827
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
828 Markers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
829
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
830 * Overview of Markers:: The components of a marker, and how it relocates.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
831 * Predicates on Markers:: Testing whether an object is a marker.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
832 * Creating Markers:: Making empty markers or markers at certain places.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
833 * Information from Markers:: Finding the marker's buffer or character
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
834 position.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
835 * Changing Markers:: Moving the marker to a new buffer or position.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
836 * The Mark:: How ``the mark'' is implemented with a marker.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
837 * The Region:: How to access ``the region''.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
838
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
839 Text
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
840
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
841 * Near Point:: Examining text in the vicinity of point.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
842 * Buffer Contents:: Examining text in a general fashion.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
843 * Comparing Text:: Comparing substrings of buffers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
844 * Insertion:: Adding new text to a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
845 * Commands for Insertion:: User-level commands to insert text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
846 * Deletion:: Removing text from a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
847 * User-Level Deletion:: User-level commands to delete text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
848 * The Kill Ring:: Where removed text sometimes is saved for later use.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
849 * Undo:: Undoing changes to the text of a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
850 * Maintaining Undo:: How to enable and disable undo information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
851 How to control how much information is kept.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
852 * Filling:: Functions for explicit filling.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
853 * Margins:: How to specify margins for filling commands.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
854 * Auto Filling:: How auto-fill mode is implemented to break lines.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
855 * Sorting:: Functions for sorting parts of the buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
856 * Columns:: Computing horizontal positions, and using them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
857 * Indentation:: Functions to insert or adjust indentation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
858 * Case Changes:: Case conversion of parts of the buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
859 * Text Properties:: Assigning Lisp property lists to text characters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
860 * Substitution:: Replacing a given character wherever it appears.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
861 * Registers:: How registers are implemented. Accessing the text or
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
862 position stored in a register.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
863 * Transposition:: Swapping two portions of a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
864 * Change Hooks:: Supplying functions to be run when text is changed.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
865
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
866 The Kill Ring
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
867
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
868 * Kill Ring Concepts:: What text looks like in the kill ring.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
869 * Kill Functions:: Functions that kill text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
870 * Yank Commands:: Commands that access the kill ring.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
871 * Low-Level Kill Ring:: Functions and variables for kill ring access.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
872 * Internals of Kill Ring:: Variables that hold kill-ring data.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
873
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
874 Indentation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
875
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
876 * Primitive Indent:: Functions used to count and insert indentation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
877 * Mode-Specific Indent:: Customize indentation for different modes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
878 * Region Indent:: Indent all the lines in a region.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
879 * Relative Indent:: Indent the current line based on previous lines.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
880 * Indent Tabs:: Adjustable, typewriter-like tab stops.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
881 * Motion by Indent:: Move to first non-blank character.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
882
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
883 Searching and Matching
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
884
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
885 * String Search:: Search for an exact match.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
886 * Regular Expressions:: Describing classes of strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
887 * Regexp Search:: Searching for a match for a regexp.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
888 * Match Data:: Finding out which part of the text matched
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
889 various parts of a regexp, after regexp search.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
890 * Saving Match Data:: Saving and restoring this information.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
891 * Standard Regexps:: Useful regexps for finding sentences, pages,...
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
892 * Searching and Case:: Case-independent or case-significant searching.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
893
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
894 Regular Expressions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
895
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
896 * Syntax of Regexps:: Rules for writing regular expressions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
897 * Regexp Example:: Illustrates regular expression syntax.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
898
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
899 Syntax Tables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
900
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
901 * Syntax Descriptors:: How characters are classified.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
902 * Syntax Table Functions:: How to create, examine and alter syntax tables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
903 * Parsing Expressions:: Parsing balanced expressions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
904 using the syntax table.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
905 * Standard Syntax Tables:: Syntax tables used by various major modes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
906 * Syntax Table Internals:: How syntax table information is stored.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
907
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
908 Syntax Descriptors
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
909
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
910 * Syntax Class Table:: Table of syntax classes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
911 * Syntax Flags:: Additional flags each character can have.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
912
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
913 Abbrevs And Abbrev Expansion
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
914
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
915 * Abbrev Mode:: Setting up XEmacs for abbreviation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
916 * Tables: Abbrev Tables. Creating and working with abbrev tables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
917 * Defining Abbrevs:: Specifying abbreviations and their expansions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
918 * Files: Abbrev Files. Saving abbrevs in files.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
919 * Expansion: Abbrev Expansion. Controlling expansion; expansion subroutines.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
920 * Standard Abbrev Tables:: Abbrev tables used by various major modes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
921
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
922 Extents
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
923
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
924 * Intro to Extents:: Extents are regions over a buffer or string.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
925 * Creating and Modifying Extents::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
926 Basic extent functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
927 * Extent Endpoints:: Accessing and setting the bounds of an extent.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
928 * Finding Extents:: Determining which extents are in an object.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
929 * Mapping Over Extents:: More sophisticated functions for extent scanning.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
930 * Extent Properties:: Extents have built-in and user-definable properties.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
931 * Detached Extents:: Extents that are not in a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
932 * Extent Parents:: Inheriting properties from another extent.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
933 * Duplicable Extents:: Extents can be marked to be copied into strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
934 * Extents and Events:: Extents can interact with the keyboard and mouse.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
935 * Atomic Extents:: Treating a block of text as a single entity.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
936
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
937 Specifiers
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
938
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
939 * Introduction to Specifiers:: Specifiers provide a clean way for
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
940 display and other properties to vary
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
941 (under user control) in a wide variety
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
942 of contexts.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
943 * Specifiers In-Depth:: Gory details about specifier innards.
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
944 * Specifier Instantiation:: Instantiation means obtaining the ``value'' of
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
945 a specifier in a particular context.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
946 * Specifier Types:: Specifiers come in different flavors.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
947 * Adding Specifications:: Specifications control a specifier's ``value''
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
948 by giving conditions under which a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
949 particular value is valid.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
950 * Retrieving Specifications:: Querying a specifier's specifications.
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
951 * Specifier Instantiation Functions::
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
952 Functions to instantiate a specifier.
1869
11812ec0334c [xemacs-hg @ 2004-01-21 09:03:42 by stephent]
stephent
parents: 1648
diff changeset
953 * Specifier Examples:: Making all this stuff clearer.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
954 * Creating Specifiers:: Creating specifiers for your own use.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
955 * Specifier Validation Functions::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
956 Validating the components of a specifier.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
957 * Other Specification Functions::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
958 Other ways of working with specifications.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
959
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
960 Faces and Window-System Objects
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
961
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
962 * Faces:: Controlling the way text looks.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
963 * Fonts:: Controlling the typeface of text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
964 * Colors:: Controlling the color of text and pixmaps.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
965
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
966 Faces
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
967
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
968 * Merging Faces:: How XEmacs decides which face to use
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
969 for a character.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
970 * Basic Face Functions:: How to define and examine faces.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
971 * Face Properties:: How to access and modify a face's properties.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
972 * Face Convenience Functions:: Convenience functions for accessing
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
973 particular properties of a face.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
974 * Other Face Display Functions:: Other functions pertaining to how a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
975 a face appears.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
976
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
977 Fonts
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
978
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
979 * Font Specifiers:: Specifying how a font will appear.
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
980 * Font Instances:: What a font specifier gets instantiated as.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
981 * Font Instance Names:: The name of a font instance.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
982 * Font Instance Size:: The size of a font instance.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
983 * Font Instance Characteristics:: Display characteristics of font instances.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
984 * Font Convenience Functions:: Convenience functions that automatically
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
985 instantiate and retrieve the properties
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
986 of a font specifier.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
987
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
988 Colors
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
989
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
990 * Color Specifiers:: Specifying how a color will appear.
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
991 * Color Instances:: What a color specifier gets instantiated as.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
992 * Color Instance Properties:: Properties of color instances.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
993 * Color Convenience Functions:: Convenience functions that automatically
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
994 instantiate and retrieve the properties
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
995 of a color specifier.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
996
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
997 Glyphs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
998
2182
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
999 * Glyph Intro:: Glyphs are abstract image specifications.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1000 * Images:: Specifying the appearance of glyphs.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1001 * Using Glyphs:: Creating and displaying glyphs.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1002 * Manipulating Glyphs:: Getting and setting glyph properties.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1003 * Glyph Examples:: Examples of how to work with glyphs.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1004
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1005 Images
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1006
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
1007 * Image Instantiators:: Specifying an image's appearance.
2182
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1008 * Image Instantiator Conversion:: Lazy realization of graphics.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1009 * Image Instantiator Formats:: A catalog of image descriptors.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1010 * Image Instances:: Classes of graphical objects.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1011
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1012 Image Instances
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1013
2953
c7d4a681eb2c [xemacs-hg @ 2005-09-26 08:41:45 by ben]
ben
parents: 2818
diff changeset
1014 * Image Instance Types:: Each image instance has a particular type.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1015 * Image Instance Functions:: Functions for working with image instances.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1016
2182
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1017 Using Glyphs
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1018
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1019 * Creating Glyphs:: Creating new glyphs.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1020 * Buffer Glyphs:: Annotations are glyphs that appear in a buffer.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1021 * Redisplay Glyphs:: Glyphs controlling various redisplay functions.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1022 * Frame Glyphs:: Displaying glyphs in GUI components of the frame.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1023 * External Glyphs:: Icons and mouse pointers for the window system.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1024 * Native GUI Widgets:: Complex active elements treated as a single glyph.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1025 * Subwindows:: Externally-controlled subwindows in buffers.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1026
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1027 Native GUI Widgets
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1028
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1029 * Introduction to Widgets:: Native widgets provide tight integration of
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1030 GUI features with the platform GUI.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1031 * Lisp API to Native Widgets:: Native widgets are glyphs.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1032 * Layouts:: Specifying composite widgets from Lisp.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1033 * Primitive Widgets:: Catalogue of available native widgets.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1034
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1035 Manipulating Glyphs
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1036
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1037 * Glyph Properties:: Accessing and modifying a glyph's properties.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1038 * Glyph Convenience Functions:: Accessing particular properties of a glyph.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1039 * Glyph Dimensions:: Determining the height, width, etc. of a glyph.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1040 * Glyph Types:: Each glyph has a particular type.
c91543697b09 [xemacs-hg @ 2004-07-19 08:24:24 by stephent]
stephent
parents: 2028
diff changeset
1041
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1042 Annotations
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1043
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1044 * Annotation Basics:: Introduction to annotations.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1045 * Annotation Primitives:: Creating and deleting annotations.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1046 * Annotation Properties:: Retrieving and changing the characteristics
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1047 of an annotation.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1048 * Margin Primitives:: Controlling the size of the margins.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1049 * Locating Annotations:: Looking for annotations in a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1050 * Annotation Hooks:: Hooks called at certain times during an
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1051 annotation's lifetime.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1052
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1053 Hash Tables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1054
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1055 * Introduction to Hash Tables:: Hash tables are fast data structures for
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1056 implementing simple tables (i.e. finite
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1057 mappings from keys to values).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1058 * Working With Hash Tables:: Hash table functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1059 * Weak Hash Tables:: Hash tables with special garbage-collection
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1060 behavior.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1061
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1062 Range Tables
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1063
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1064 * Introduction to Range Tables:: Range tables efficiently map ranges of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1065 integers to values.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1066 * Working With Range Tables:: Range table functions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1067
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1068
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1069 XEmacs Display
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1070
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1071 * Refresh Screen:: Clearing the screen and redrawing everything on it.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1072 * Truncation:: Folding or wrapping long text lines.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1073 * The Echo Area:: Where messages are displayed.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1074 * Selective Display:: Hiding part of the buffer text.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1075 * Overlay Arrow:: Display of an arrow to indicate position.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1076 * Temporary Displays:: Displays that go away automatically.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1077 * Blinking:: How XEmacs shows the matching open parenthesis.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1078 * Usual Display:: The usual conventions for displaying nonprinting chars.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1079 * Display Tables:: How to specify other conventions.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1080 * Beeping:: Audible signal to the user.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1081
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1082 Processes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1083
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1084 * Subprocess Creation:: Functions that start subprocesses.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1085 * Synchronous Processes:: Details of using synchronous subprocesses.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1086 * Asynchronous Processes:: Starting up an asynchronous subprocess.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1087 * Deleting Processes:: Eliminating an asynchronous subprocess.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1088 * Process Information:: Accessing run-status and other attributes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1089 * Input to Processes:: Sending input to an asynchronous subprocess.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1090 * Signals to Processes:: Stopping, continuing or interrupting
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1091 an asynchronous subprocess.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1092 * Output from Processes:: Collecting output from an asynchronous subprocess.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1093 * Sentinels:: Sentinels run when process run-status changes.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1094 * Network:: Opening network connections.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1095
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1096 Receiving Output from Processes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1097
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1098 * Process Buffers:: If no filter, output is put in a buffer.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1099 * Filter Functions:: Filter functions accept output from the process.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1100 * Accepting Output:: How to wait until process output arrives.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1101
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1102 Operating System Interface
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1103
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1104 * Starting Up:: Customizing XEmacs start-up processing.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1105 * Getting Out:: How exiting works (permanent or temporary).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1106 * System Environment:: Distinguish the name and kind of system.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1107 * Terminal Input:: Recording terminal input for debugging.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1108 * Terminal Output:: Recording terminal output for debugging.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1109 * Flow Control:: How to turn output flow control on or off.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1110 * Batch Mode:: Running XEmacs without terminal interaction.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1111
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1112 Starting Up XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1113
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1114 * Start-up Summary:: Sequence of actions XEmacs performs at start-up.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1115 * Init File:: Details on reading the init file (@file{.emacs}).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1116 * Terminal-Specific:: How the terminal-specific Lisp file is read.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1117 * Command Line Arguments:: How command line arguments are processed,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1118 and how you can customize them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1119
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1120 Getting out of XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1121
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1122 * Killing XEmacs:: Exiting XEmacs irreversibly.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1123 * Suspending XEmacs:: Exiting XEmacs reversibly.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1124
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1125 X-Windows
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1126
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1127 * X Selections:: Transferring text to and from other X clients.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1128 * X Server:: Information about the X server connected to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1129 a particular device.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1130 * Resources:: Getting resource values from the server.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1131 * Server Data:: Getting info about the X server.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1132 * Grabs:: Restricting access to the server by other apps.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1133 * X Miscellaneous:: Other X-specific functions and variables.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1134
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1135 ToolTalk Support
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1136
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1137 * XEmacs ToolTalk API Summary::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1138 * Sending Messages::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1139 * Receiving Messages::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1140
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1141 LDAP Support
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1142
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1143 * Building XEmacs with LDAP support:: How to add LDAP support to XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1144 * XEmacs LDAP API:: Lisp access to LDAP functions
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1145 * Syntax of Search Filters:: A brief summary of RFC 1558
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1146
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1147 XEmacs LDAP API
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1148
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1149 * LDAP Variables:: Lisp variables related to LDAP
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
1150 * The High-Level LDAP API:: High-level LDAP lisp functions
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1151 * The Low-Level LDAP API:: Low-level LDAP lisp primitives
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
1152 * LDAP Internationalization:: I18n variables and functions
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1153
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1154 The Low-Level LDAP API
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1155
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
1156 * The LDAP Lisp Object::
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
1157 * Opening and Closing a LDAP Connection::
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
1158 * Low-level Operations on a LDAP Server::
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
1159
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
1160 LDAP Internationalization
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
1161
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
1162 * LDAP Internationalization Variables::
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
1163 * Encoder/Decoder Functions::
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1164
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1165 Internationalization
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1166
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1167 * I18N Levels 1 and 2:: Support for different time, date, and currency formats.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1168 * I18N Level 3:: Support for localized messages.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1169 * I18N Level 4:: Support for Asian languages.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1170
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1171 MULE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1172
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1173 * Internationalization Terminology::
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1174 Definition of various internationalization terms.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1175 * Charsets:: Sets of related characters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1176 * MULE Characters:: Working with characters in XEmacs/MULE.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1177 * Composite Characters:: Making new characters by overstriking other ones.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1178 * ISO 2022:: An international standard for charsets and encodings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1179 * Coding Systems:: Ways of representing a string of chars using integers.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1180 * CCL:: A special language for writing fast converters.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1181 * Category Tables:: Subdividing charsets into groups.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1182
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1183 Tips
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1184
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1185 * Style Tips:: Writing clean and robust programs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1186 * Compilation Tips:: Making compiled code run fast.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1187 * Documentation Tips:: Writing readable documentation strings.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1188 * Comment Tips:: Conventions for writing comments.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1189 * Library Headers:: Standard headers for library packages.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1190
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1191 Building XEmacs and Object Allocation
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1192
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1193 * Building XEmacs:: How to preload Lisp libraries into XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1194 * Garbage Collection:: Reclaiming space for Lisp objects no longer used.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1195
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1196 @end menu
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1197
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1198 @include intro.texi
693
b05e2a249757 [xemacs-hg @ 2001-12-14 07:50:06 by stephent]
stephent
parents: 446
diff changeset
1199 @include packaging.texi
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1200 @include objects.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1201 @include numbers.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1202 @include strings.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1203
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1204 @include lists.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1205 @include sequences.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1206 @include symbols.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1207 @include eval.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1208
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1209 @include control.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1210 @include variables.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1211 @include functions.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1212 @include macros.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1213 @include customize.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1214
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1215 @include loading.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1216 @include compile.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1217 @include debugging.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1218 @include streams.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1219
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1220 @include minibuf.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1221 @include commands.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1222 @include keymaps.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1223 @include menus.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1224 @include dialog.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1225 @include toolbar.texi
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
1226 @include gutter.texi
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1227 @include scrollbars.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1228 @include dragndrop.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1229 @include modes.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1230
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1231 @include help.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1232 @include files.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1233 @include backups.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1234 @include buffers.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1235
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1236 @include windows.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1237 @include frames.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1238 @include consoles-devices.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1239 @include positions.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1240 @include markers.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1241 @include text.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1242
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1243 @include searching.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1244 @include syntax.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1245 @include abbrevs.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1246
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1247 @include extents.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1248 @include specifiers.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1249 @include faces.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1250 @include glyphs.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1251 @include annotations.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1252 @include display.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1253
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1254 @include hash-tables.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1255 @include range-tables.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1256 @include databases.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1257
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1258 @include processes.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1259 @include os.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1260 @include x-windows.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1261 @include tooltalk.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1262 @include ldap.texi
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
1263 @include postgresql.texi
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1264 @include internationalization.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1265 @include mule.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1266
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1267 @c MOVE to User's Manual: include calendar.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1268
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1269 @c MOVE to User's Manual: include misc-modes.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1270
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1271 @c appendices
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1272
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1273 @c REMOVE this: include non-hacker.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1274
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1275 @include tips.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1276 @include building.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1277 @include errors.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1278 @include locals.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1279 @include maps.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1280 @include hooks.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1281
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1282 @include index.texi
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1283
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1284 @c Print the tables of contents
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1285 @summarycontents
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1286 @contents
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1287 @c That's all
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1288
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1289 @bye
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1290
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1291
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1292 These words prevent "local variables" above from confusing XEmacs.