This is ../info/internals.info, produced by makeinfo version 4.6 from
internals/internals.texi.

INFO-DIR-SECTION XEmacs Editor
START-INFO-DIR-ENTRY
* Internals: (internals).       XEmacs Internals Manual.
END-INFO-DIR-ENTRY

   Edition History:

   Created November 1995 (?) by Ben Wing.  XEmacs Internals Manual
Version 1.0, March, 1996.  XEmacs Internals Manual Version 1.1, March,
1997.  XEmacs Internals Manual Version 1.4, March, 2001.  XEmacs
Internals Manual Version 21.5, October, 2004.

   Copyright (C) 1992 - 2004 Ben Wing.  Copyright (C) 1996, 1997 Sun
Microsystems.  Copyright (C) 1994 - 1998, 2002, 2003 Free Software
Foundation.  Copyright (C) 1994, 1995 Board of Trustees, University of
Illinois.

   Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
preserved on all copies.

   Permission is granted to copy and distribute modified versions of
this manual under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.

   Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that this permission notice may be stated in a
translation approved by the Foundation.

   Permission is granted to copy and distribute modified versions of
this manual under the conditions for verbatim copying, provided also
that the section entitled "GNU General Public License" is included
exactly as in the original, and provided that the entire resulting
derived work is distributed under the terms of a permission notice
identical to this one.

   Permission is granted to copy and distribute translations of this
manual into another language, under the above conditions for modified
versions, except that the section entitled "GNU General Public License"
may be included in a translation approved by the Free Software
Foundation instead of in the original English.


Indirect:
internals.info-1: 2060
internals.info-2: 295248
internals.info-3: 592962
internals.info-4: 885388
internals.info-5: 1171739

Tag Table:
(Indirect)
Node: Top2060
Node: Introduction12823
Node: Authorship of XEmacs17516
Node: A History of Emacs24760
Node: Through Version 1827242
Node: Epoch35379
Node: Lucid Emacs35818
Node: GNU Emacs 1938790
Node: GNU Emacs 2041329
Node: XEmacs42141
Node: The XEmacs Split57346
Node: XEmacs from the Outside69759
Node: The Lisp Language71521
Node: XEmacs from the Perspective of Building81061
Node: Build-Time Dependencies87499
Node: The Modules of XEmacs90178
Node: A Summary of the Various XEmacs Modules90708
Node: Modules for Building XEmacs118196
Node: Modules for Build Configuration118526
Node: Modules for Compiling XEmacs118946
Node: Modules for Preloading Lisp119322
Node: Low-Level Modules119693
Node: Basic Lisp Modules124044
Node: Modules for Standard Editing Operations130656
Node: Modules for Interfacing with the File System136571
Node: Modules for Other Aspects of the Lisp Interpreter and Object System140271
Node: Modules for Interfacing with the Operating System148298
Node: The Build Configuration System155853
Node: The version.sh Script156397
Node: Adding Configurable Features160682
Node: The configure Script161498
Node: The Makefile Precursors174514
Node: Rules When Writing New C Code175513
Node: Introduction to Writing C Code176468
Node: Writing New Modules180904
Node: Working with Lisp Objects185953
Node: Writing Lisp Primitives196545
Node: Writing Good Comments207709
Node: Adding Global Lisp Variables211320
Node: Writing Macros215234
Node: Proper Use of Unsigned Types221173
Node: Major Textual Changes222412
Node: Great Integral Type Renaming223136
Node: Text/Char Type Renaming231981
Node: Debugging and Testing235390
Node: Regression Testing XEmacs239117
Node: How to Regression-Test239371
Node: Modules for Regression Testing248604
Node: CVS Techniques249390
Node: Merging a Branch into the Trunk249589
Node: XEmacs from the Inside251891
Node: Basic Types260205
Node: Low-Level Allocation260365
Node: Basic Heap Allocation260674
Node: Stack Allocation260854
Node: Dynamic Arrays261018
Node: Allocation by Blocks265733
Node: Modules for Allocation267424
Node: The XEmacs Object System (Abstractly Speaking)270556
Node: How Lisp Objects Are Represented in C285190
Node: Allocation of Objects in XEmacs Lisp289871
Node: Introduction to Allocation290411
Node: Garbage Collection294094
Node: GCPROing295248
Node: Garbage Collection - Step by Step303193
Node: Invocation303585
Node: garbage_collect_1306595
Node: mark_object316074
Node: gc_sweep317883
Node: sweep_lcrecords_1322944
Node: compact_string_chars323936
Node: sweep_strings326113
Node: sweep_bit_vectors_1327075
Node: Integers and Characters327748
Node: Allocation from Frob Blocks328497
Node: lrecords330098
Node: Low-level allocation342321
Node: Cons346425
Node: Vector347148
Node: Bit Vector347723
Node: Symbol348213
Node: Marker348564
Node: String349116
Node: Compiled Function352725
Node: The Lisp Reader and Compiler352891
Node: Evaluation; Stack Frames; Bindings353130
Node: Evaluation353494
Node: Dynamic Binding; The specbinding Stack; Unwind-Protects360046
Node: Simple Special Forms362430
Node: Catch and Throw363210
Node: Error Trapping365808
Node: Symbols and Variables372621
Node: Introduction to Symbols372858
Node: Obarrays373923
Node: Symbol Values377453
Node: Buffers379738
Node: Introduction to Buffers380141
Node: Buffer Lists382782
Node: Markers and Extents384706
Node: The Buffer Object386941
Node: Text390388
Node: The Text in a Buffer390737
Node: Ibytes and Ichars397834
Node: Byte-Char Position Conversion398020
Node: Searching and Matching406081
Node: Multilingual Support413352
Node: Introduction to Multilingual Issues #1415244
Node: Introduction to Multilingual Issues #2415812
Node: Introduction to Multilingual Issues #3433862
Node: Introduction to Multilingual Issues #4450640
Node: Character Sets451043
Node: Encodings454519
Node: Japanese EUC (Extended Unix Code)455570
Node: JIS7456637
Node: Internal Mule Encodings457949
Node: Internal String Encoding459934
Node: Internal Character Encoding462077
Node: Byte/Character Types; Buffer Positions; Other Typedefs464352
Node: Byte Types464831
Node: Different Ways of Seeing Internal Text467268
Node: Buffer Positions475279
Node: Other Typedefs477212
Node: Usage of the Various Representations477948
Node: Working With the Various Representations479684
Node: Internal Text API's480143
Node: Basic internal-format API's480567
Node: The DFC API482021
Node: The Eistring API493499
Node: Coding for Mule516554
Node: Character-Related Data Types517503
Node: Working With Character and Byte Positions522152
Node: Conversion to and from External Data526131
Node: General Guidelines for Writing Mule-Aware Code534673
Node: An Example of Mule-Aware Code538115
Node: Mule-izing Code540101
Node: CCL541113
Node: Microsoft Windows-Related Multilingual Issues546249
Node: Microsoft Documentation546762
Node: Locales549023
Node: More about code pages555055
Node: More about locales560573
Node: Unicode support under Windows561989
Node: The golden rules of writing Unicode-safe code574226
Node: The format of the locale in setlocale()575944
Node: Random other Windows I18N docs581883
Node: Modules for Internationalization589664
Node: Consoles; Devices; Frames; Windows592584
Node: Introduction to Consoles; Devices; Frames; Windows592962
Node: Point595492
Node: Window Hierarchy596768
Node: The Window Object601217
Node: Modules for the Basic Displayable Lisp Objects604706
Node: The Redisplay Mechanism610531
Node: Critical Redisplay Sections611411
Node: Line Start Cache634275
Node: Redisplay Piece by Piece637508
Node: Modules for the Redisplay Mechanism639586
Node: Modules for other Display-Related Lisp Objects641946
Node: Extents643294
Node: Introduction to Extents643828
Node: Extent Ordering644967
Node: Format of the Extent Info646205
Node: Zero-Length Extents649184
Node: Mathematics of Extent Ordering650580
Node: Extent Fragments654982
Node: Faces656065
Node: Glyphs656178
Node: Specifiers662799
Node: Menus663087
Node: Events and the Event Loop665355
Node: Introduction to Events665890
Node: Main Loop667836
Node: Specifics of the Event Gathering Mechanism671408
Node: Specifics About the Emacs Event683898
Node: Event Queues684131
Node: Event Stream Callback Routines687033
Node: Other Event Loop Functions692422
Node: Stream Pairs693550
Node: Converting Events696101
Node: Dispatching Events; The Command Builder696693
Node: Focus Handling696948
Node: Editor-Level Control Flow Modules700965
Node: Asynchronous Events; Quit Checking704412
Node: Signal Handling704723
Node: Control-G (Quit) Checking704922
Node: Profiling725436
Node: Asynchronous Timeouts729642
Node: Exiting729816
Node: Lstreams732261
Node: Creating an Lstream733273
Node: Lstream Types734497
Node: Lstream Functions734750
Node: Lstream Methods738329
Node: Subprocesses741481
Node: Interface to MS Windows743458
Node: Different kinds of Windows environments743787
Node: Windows Build Flags757553
Node: Windows I18N Introduction759496
Node: Modules for Interfacing with MS Windows769147
Node: Interface to the X Window System771185
Node: Lucid Widget Library771519
Node: Generic Widget Interface772895
Node: Scrollbars776480
Node: Menubars776623
Node: Checkboxes and Radio Buttons776766
Node: Progress Bars776952
Node: Tab Controls777112
Node: Modules for Interfacing with X Windows777233
Node: Dumping780639
Node: Dumping Justification780897
Node: Overview782938
Node: Data descriptions783659
Node: Dumping phase785721
Node: Object inventory786127
Node: Address allocation790236
Node: The header791622
Node: Data dumping792064
Node: Pointers dumping792722
Node: Reloading phase794107
Node: Remaining issues795639
Node: Future Work796662
Node: Future Work -- General Suggestions797787
Node: Future Work -- Elisp Compatibility Package819031
Node: Future Work -- Drag-n-Drop827054
Node: Future Work -- Standard Interface for Enabling Extensions834250
Node: Future Work -- Better Initialization File Scheme839103
Node: Future Work -- Keyword Parameters849061
Node: Future Work -- Property Interface Changes856878
Node: Future Work -- Toolbars860846
Node: Future Work -- Easier Toolbar Customization861160
Node: Future Work -- Toolbar Interface Changes864497
Node: Future Work -- Menu API Changes873285
Node: Future Work -- Removal of Misc-User Event Type876313
Node: Future Work -- Mouse Pointer878548
Node: Future Work -- Abstracted Mouse Pointer Interface878866
Node: Future Work -- Busy Pointer880643
Node: Future Work -- Extents882965
Node: Future Work -- Everything should obey duplicable extents883263
Node: Future Work -- Version Number and Development Tree Organization885388
Node: Future Work -- Improvements to the `xemacs.org' Website901514
Node: Future Work -- Keybindings907175
Node: Future Work -- Keybinding Schemes907566
Node: Future Work -- Better Support for Windows Style Key Bindings908655
Node: Future Work -- Misc Key Binding Ideas912962
Node: Future Work -- Byte Code Snippets914414
Node: Future Work -- Autodetection915480
Node: Future Work -- Conversion Error Detection953548
Node: Future Work -- Unicode964461
Node: Future Work -- BIDI Support969436
Node: Future Work -- Localized Text/Messages970945
Node: Future Work -- Lisp Stream API984396
Node: Future Work -- Multiple Values995328
Node: Future Work -- Macros997205
Node: Future Work -- Specifiers997957
Node: Future Work -- Display Tables1004975
Node: Future Work -- Making Elisp Function Calls Faster1006873
Node: Future Work -- Lisp Engine Replacement1017737
Node: Future Work -- Lisp Engine Discussion1018179
Node: Future Work -- Lisp Engine Replacement -- Implementation1027215
Node: Future Work -- Startup File Modification by Packages1047441
Node: Future Work -- Better Rendering Support1050544
Node: Better Rendering Support -- Review Criteria1052324
Node: Better Rendering Support -- Implementation1054394
Node: Better Rendering Support -- Current Status1064571
Node: Better Rendering Support -- Configuration with the Interim Patches1066546
Node: Future Work Discussion1070103
Node: Discussion -- Garbage Collection1070857
Node: Discussion -- Pure Space1071201
Node: Discussion -- Hashtable-Based Marking and Cleanup1074491
Node: Discussion -- The Anti-Cons1077115
Node: Discussion -- Glyphs1081043
Node: Discussion -- Dialog Boxes1089967
Node: Discussion -- Multilingual Issues1110202
Node: Discussion -- Instantiators and Generic Property Accessors1148834
Node: Discussion -- Switching to C++1171739
Node: Discussion -- Windows External Widget1186609
Node: Discussion -- Packages1194158
Node: Discussion -- Distribution Layout1195867
Node: Old Future Work1209942
Node: Old Future Work -- A Portable Unexec Replacement1210746
Node: Old Future Work -- Indirect Buffers1216511
Node: Old Future Work -- Improvements in support for non-ASCII (European) keysyms under X1221490
Node: Old Future Work -- RTF Clipboard Support1223297
Node: Old Future Work -- xemacs.org Mailing Address Changes1225373
Node: Old Future Work -- Lisp callbacks from critical areas of the C code1229777
Node: Index1235648

End Tag Table
