This is Info file elisp, produced by Makeinfo-1.55 from the input file elisp.texi. This version is the edition 2.3 of the GNU Emacs Lisp Reference Manual. It corresponds to Emacs Version 19.23. Published by the Free Software Foundation 675 Massachusetts Avenue Cambridge, MA 02139 USA Copyright (C) 1990, 1991, 1992, 1993, 1994 Free Software Foundation, Inc. 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: elisp-1: 1718 elisp-2: 35686 elisp-3: 81024 elisp-4: 129709 elisp-5: 177109 elisp-6: 224715 elisp-7: 273033 elisp-8: 319808 elisp-9: 368924 elisp-10: 418481 elisp-11: 467522 elisp-12: 516631 elisp-13: 566328 elisp-14: 616143 elisp-15: 665726 elisp-16: 714906 elisp-17: 762647 elisp-18: 807887 elisp-19: 856550 elisp-20: 906193 elisp-21: 954466 elisp-22: 1001612 elisp-23: 1050386 elisp-24: 1098411 elisp-25: 1146105 elisp-26: 1195412 elisp-27: 1245347 elisp-28: 1293702 elisp-29: 1342757 elisp-30: 1392649 elisp-31: 1442157 elisp-32: 1490206 elisp-33: 1529937 elisp-34: 1547825  Tag Table: (Indirect) Node: Top1718 Node: Copying35686 Node: Introduction54837 Node: Caveats56406 Node: Lisp History58179 Node: Conventions59437 Node: Some Terms60245 Node: nil and t60954 Node: Evaluation Notation62629 Node: Printing Notation63549 Node: Error Messages64416 Node: Buffer Text Notation64850 Node: Format of Descriptions65718 Node: A Sample Function Description66565 Node: A Sample Variable Description70542 Node: Acknowledgements71443 Node: Lisp Data Types72748 Node: Printed Representation75047 Node: Comments77081 Node: Programming Types77708 Node: Integer Type79304 Node: Floating Point Type80347 Node: Character Type81024 Node: Symbol Type87751 Node: Sequence Type90475 Node: Cons Cell Type91899 Node: Dotted Pair Notation96375 Node: Association List Type98489 Node: Array Type99365 Node: String Type100723 Node: Vector Type103827 Node: Function Type104590 Node: Macro Type105695 Node: Primitive Function Type106384 Node: Byte-Code Type107896 Node: Autoload Type108490 Node: Editing Types109465 Node: Buffer Type110384 Node: Marker Type112214 Node: Window Type112931 Node: Frame Type114132 Node: Window Configuration Type114812 Node: Process Type115349 Node: Stream Type116301 Node: Keymap Type117419 Node: Syntax Table Type117872 Node: Display Table Type118837 Node: Overlay Type119191 Node: Type Predicates119793 Node: Equality Predicates122746 Node: Numbers125858 Node: Integer Basics127357 Node: Float Basics129709 Node: Predicates on Numbers131506 Node: Comparison of Numbers133135 Node: Numeric Conversions136472 Node: Arithmetic Operations137770 Node: Rounding Operations143120 Node: Bitwise Operations144209 Node: Transcendental Functions152936 Node: Random Numbers154708 Node: Strings and Characters156562 Node: String Basics157755 Node: Predicates for Strings160000 Node: Creating Strings160553 Node: Text Comparison165104 Node: String Conversion167952 Node: Formatting Strings171222 Node: Character Case177109 Node: Case Table179997 Node: Lists183868 Node: Cons Cells184822 Node: Lists as Boxes186151 Node: List-related Predicates188786 Node: List Elements190481 Node: Building Lists193495 Node: Modifying Lists199734 Node: Setcar200539 Node: Setcdr202953 Node: Rearrangement205456 Node: Sets And Lists211263 Node: Association Lists215355 Node: Sequences Arrays Vectors222564 Node: Sequence Functions224715 Node: Arrays228012 Node: Array Functions230167 Node: Vectors232346 Node: Vector Functions233859 Node: Symbols236275 Node: Symbol Components237323 Node: Definitions241510 Node: Creating Symbols243663 Node: Property Lists250120 Node: Evaluation254436 Node: Intro Eval255233 Node: Eval258739 Node: Forms263016 Node: Self-Evaluating Forms264164 Node: Symbol Forms265682 Node: Classifying Lists266592 Node: Function Indirection267341 Node: Function Forms270449 Node: Macro Forms271441 Node: Special Forms273033 Node: Autoloading275305 Node: Quoting275795 Node: Control Structures277231 Node: Sequencing278845 Node: Conditionals281703 Node: Combining Conditions285118 Node: Iteration288381 Node: Nonlocal Exits290158 Node: Catch and Throw290851 Node: Examples of Catch294687 Node: Errors296698 Node: Signaling Errors298177 Node: Processing of Errors301236 Node: Handling Errors302557 Node: Error Symbols309454 Node: Cleanups312750 Node: Variables316522 Node: Global Variables318223 Node: Constant Variables319292 Node: Local Variables319808 Node: Void Variables324497 Node: Defining Variables328001 Node: Accessing Variables334852 Node: Setting Variables336271 Node: Variable Scoping339642 Node: Scope341232 Node: Extent342748 Node: Impl of Scope344216 Node: Using Scoping346174 Node: Buffer-Local Variables347390 Node: Intro to Buffer-Local348192 Node: Creating Buffer-Local351898 Node: Default Value356551 Node: Functions359688 Node: What Is a Function360775 Node: Lambda Expressions364683 Node: Lambda Components365448 Node: Simple Lambda367272 Node: Argument List368924 Node: Function Documentation372644 Node: Function Names374608 Node: Defining Functions377175 Node: Calling Functions379704 Node: Mapping Functions383549 Node: Anonymous Functions385894 Node: Function Cells389131 Node: Inline Functions393799 Node: Related Topics395663 Node: Macros396709 Node: Simple Macro397986 Node: Expansion398714 Node: Compiling Macros401681 Node: Defining Macros403333 Node: Backquote404650 Node: Problems with Macros407449 Node: Argument Evaluation408137 Node: Surprising Local Vars411090 Node: Eval During Expansion413225 Node: Repeated Expansion414912 Node: Loading416816 Node: How Programs Do Loading418481 Node: Autoload423622 Node: Repeated Loading429127 Node: Features431096 Node: Unloading435699 Node: Hooks for Loading437442 Node: Byte Compilation438447 Node: Speed of Byte-Code439913 Node: Compilation Functions440991 Node: Eval During Compile446327 Node: Byte-Code Objects447583 Node: Disassembly450072 Node: Debugging458512 Node: Debugger459912 Node: Error Debugging461049 Node: Infinite Loops462837 Node: Function Debugging464074 Node: Explicit Debug466757 Node: Using Debugger467522 Node: Debugger Commands469379 Node: Invoking the Debugger472815 Node: Internals of Debugger476726 Node: Syntax Errors481242 Node: Excess Open482483 Node: Excess Close484347 Node: Compilation Errors485757 Node: Edebug487038 Node: Using Edebug489087 Node: Instrumenting491671 Node: Edebug Execution Modes494706 Node: Jumping497975 Node: Edebug Misc500919 Node: Breakpoints502340 Node: Global Break Condition505276 Node: Source Breakpoints506159 Node: Trapping Errors507081 Node: Edebug Views508168 Node: Edebug Eval510072 Node: Eval List511138 Node: Printing in Edebug515205 Node: Trace Buffer516631 Node: Coverage Testing518493 Node: The Outside Context520537 Node: Checking Whether to Stop521255 Node: Edebug Display Update521921 Node: Edebug Recursive Edit524064 Node: Instrumenting Macro Calls525685 Node: Specification List527956 Node: Backtracking535878 Node: Specification Examples537812 Node: Edebug Options539875 Node: Read and Print545012 Node: Streams Intro545982 Node: Input Streams547855 Node: Input Functions552931 Node: Output Streams554984 Node: Output Functions559024 Node: Output Variables563315 Node: Minibuffers565250 Node: Intro to Minibuffers566328 Node: Text from Minibuffer568727 Node: Object from Minibuffer573405 Node: Minibuffer History576593 Node: Completion579162 Node: Basic Completion581127 Node: Minibuffer Completion585984 Node: Completion Commands588887 Node: High-Level Completion593515 Node: Reading File Names597290 Node: Programmed Completion600897 Node: Yes-or-No Queries603099 Node: Multiple Queries607919 Node: Minibuffer Misc611734 Node: Command Loop616143 Node: Command Overview617493 Node: Defining Commands621624 Node: Using Interactive622365 Node: Interactive Codes625723 Node: Interactive Examples631336 Node: Interactive Call632643 Node: Command Loop Info637868 Node: Input Events641980 Node: Keyboard Events643378 Node: Function Keys645912 Node: Mouse Events648306 Node: Click Events649415 Node: Drag Events652078 Node: Button-Down Events653512 Node: Repeat Events654748 Node: Motion Events658733 Node: Focus Events659852 Node: Event Examples661400 Node: Classifying Events662642 Node: Accessing Events665726 Node: Strings of Events668359 Node: Reading Input671430 Node: Key Sequence Input672292 Node: Reading One Event675611 Node: Quoted Character Input677535 Node: Event Input Misc678869 Node: Waiting682084 Node: Quitting684531 Node: Prefix Command Arguments688926 Node: Recursive Editing693806 Node: Disabling Commands698590 Node: Command History700650 Node: Keyboard Macros702383 Node: Keymaps704491 Node: Keymap Terminology705945 Node: Format of Keymaps708865 Node: Creating Keymaps712031 Node: Inheritance and Keymaps713895 Node: Prefix Keys714906 Node: Active Keymaps718212 Node: Key Lookup724372 Node: Functions for Key Lookup729848 Node: Changing Key Bindings735138 Node: Key Binding Commands742017 Node: Scanning Keymaps744004 Node: Menu Keymaps749268 Node: Defining Menus749885 Node: Mouse Menus752668 Node: Keyboard Menus754933 Node: Menu Example756322 Node: Menu Bar757653 Node: Modifying Menus760517 Node: Modes761708 Node: Major Modes762647 Node: Major Mode Conventions765550 Node: Example Major Modes771497 Node: Auto Major Mode779349 Node: Mode Help785991 Node: Derived Modes787085 Node: Minor Modes789269 Node: Minor Mode Conventions790576 Node: Keymaps and Minor Modes793415 Node: Mode Line Format795249 Node: Mode Line Data796953 Node: Mode Line Variables801155 Node: %-Constructs805669 Node: Hooks807887 Node: Documentation813434 Node: Documentation Basics814786 Node: Accessing Documentation817561 Node: Keys in Documentation823332 Node: Describing Characters825757 Node: Help Functions828027 Node: Files835952 Node: Visiting Files837723 Node: Visiting Functions839220 Node: Subroutines of Visiting844200 Node: Saving Buffers846104 Node: Reading from Files851926 Node: Writing to Files853965 Node: File Locks856550 Node: Information about Files859576 Node: Testing Accessibility860330 Node: Kinds of Files863882 Node: Truenames865321 Node: File Attributes866171 Node: Changing File Attributes871274 Node: File Names876672 Node: File Name Components878198 Node: Directory Names880723 Node: Relative File Names884028 Node: File Name Expansion885099 Node: Unique File Names889380 Node: File Name Completion890506 Node: Contents of Directories893131 Node: Create/Delete Dirs896232 Node: Magic File Names896728 Node: Files and MS-DOS902084 Node: Backups and Auto-Saving904140 Node: Backup Files904807 Node: Making Backups906193 Node: Rename or Copy908747 Node: Numbered Backups911227 Node: Backup Names913464 Node: Auto-Saving916740 Node: Reverting923948 Node: Buffers927695 Node: Buffer Basics929024 Node: Buffer Names931067 Node: Buffer File Name934090 Node: Buffer Modification938201 Node: Modification Time940316 Node: Read Only Buffers943645 Node: The Buffer List945926 Node: Creating Buffers948884 Node: Killing Buffers950918 Node: Current Buffer954466 Node: Windows959125 Node: Basic Windows960595 Node: Splitting Windows963554 Node: Deleting Windows968969 Node: Selecting Windows971574 Node: Cyclic Window Ordering973833 Node: Buffers and Windows977696 Node: Displaying Buffers979843 Node: Choosing Window984169 Node: Window Point989693 Node: Window Start991732 Node: Vertical Scrolling995745 Node: Horizontal Scrolling1001612 Node: Size of Window1005027 Node: Resizing Windows1009053 Node: Coordinates and Windows1012461 Node: Window Configurations1014421 Node: Frames1017283 Node: Creating Frames1019319 Node: Frame Parameters1021557 Node: Parameter Access1022356 Node: Initial Parameters1023048 Node: X Frame Parameters1023847 Node: Size and Position1028182 Node: Deleting Frames1030800 Node: Finding All Frames1031573 Node: Frames and Windows1032924 Node: Minibuffers and Frames1034229 Node: Input Focus1035204 Node: Visibility of Frames1038321 Node: Raising and Lowering1039544 Node: Frame Configurations1041021 Node: Mouse Tracking1041612 Node: Mouse Position1042837 Node: Pop-Up Menus1044018 Node: Dialog Boxes1045885 Node: X Selections1047771 Node: X Connections1050386 Node: Resources1052526 Node: Server Data1053345 Node: Positions1055260 Node: Point1056211 Node: Motion1058804 Node: Character Motion1059671 Node: Word Motion1061715 Node: Buffer End Motion1063063 Node: Text Lines1064540 Node: Screen Lines1068630 Node: Vertical Motion1074158 Node: List Motion1075907 Node: Skipping Characters1078697 Node: Excursions1080849 Node: Narrowing1083091 Node: Markers1088283 Node: Overview of Markers1089178 Node: Predicates on Markers1092059 Node: Creating Markers1092924 Node: Information from Markers1095935 Node: Changing Markers1097026 Node: The Mark1098411 Node: The Region1105121 Node: Text1106284 Node: Near Point1108819 Node: Buffer Contents1111537 Node: Comparing Text1113092 Node: Insertion1114519 Node: Commands for Insertion1117414 Node: Deletion1120158 Node: User-Level Deletion1123629 Node: The Kill Ring1127746 Node: Kill Ring Concepts1129905 Node: Kill Functions1130953 Node: Yank Commands1132635 Node: Low Level Kill Ring1134462 Node: Internals of Kill Ring1137181 Node: Undo1139934 Node: Maintaining Undo1143487 Node: Filling1146105 Node: Auto Filling1150341 Node: Sorting1151407 Node: Columns1160774 Node: Indentation1163275 Node: Primitive Indent1164047 Node: Mode-Specific Indent1165207 Node: Region Indent1168342 Node: Relative Indent1171263 Node: Indent Tabs1173639 Node: Motion by Indent1174953 Node: Case Changes1175725 Node: Text Properties1179007 Node: Examining Properties1180766 Node: Changing Properties1182734 Node: Property Search1186163 Node: Special Properties1190810 Node: Sticky Properties1195412 Node: Saving Properties1198402 Node: Not Intervals1201506 Node: Substitution1203997 Node: Registers1206007 Node: Transposition1208541 Node: Change Hooks1209428 Node: Searching and Matching1212621 Node: String Search1213677 Node: Regular Expressions1218206 Node: Syntax of Regexps1218782 Node: Regexp Example1230711 Node: Regexp Search1232870 Node: Search and Replace1238010 Node: Match Data1241205 Node: Simple Match Data1242327 Node: Replacing Match1245347 Node: Entire Match Data1247259 Node: Saving Match Data1249243 Node: Searching and Case1250806 Node: Standard Regexps1252621 Node: Syntax Tables1254161 Node: Syntax Basics1255270 Node: Syntax Descriptors1257826 Node: Syntax Class Table1259673 Node: Syntax Flags1265720 Node: Syntax Table Functions1268558 Node: Motion and Syntax1272317 Node: Parsing Expressions1273504 Node: Standard Syntax Tables1278908 Node: Syntax Table Internals1279740 Node: Abbrevs1280760 Node: Abbrev Mode1282543 Node: Abbrev Tables1283269 Node: Defining Abbrevs1284796 Node: Abbrev Files1286639 Node: Abbrev Expansion1288405 Node: Standard Abbrev Tables1292571 Node: Processes1293702 Node: Subprocess Creation1295836 Node: Synchronous Processes1299123 Node: MS-DOS Subprocesses1304801 Node: Asynchronous Processes1305868 Node: Deleting Processes1309440 Node: Process Information1311103 Node: Input to Processes1314535 Node: Signals to Processes1316796 Node: Output from Processes1320991 Node: Process Buffers1321717 Node: Filter Functions1324688 Node: Accepting Output1329606 Node: Sentinels1331130 Node: Transaction Queues1334248 Node: TCP1335925 Node: System Interface1337549 Node: Starting Up1338743 Node: Start-up Summary1339326 Node: Init File1342757 Node: Terminal-Specific1344960 Node: Command Line Arguments1347914 Node: Getting Out1351410 Node: Killing Emacs1351962 Node: Suspending Emacs1353610 Node: System Environment1356891 Node: User Identification1361672 Node: Time of Day1362777 Node: Timers1365604 Node: Terminal Input1367287 Node: Input Modes1367783 Node: Translating Input1370353 Node: Recording Input1376995 Node: Terminal Output1378289 Node: Special Keysyms1381137 Node: Flow Control1382012 Node: Batch Mode1385691 Node: Display1386767 Node: Refresh Screen1387908 Node: Screen Size1389087 Node: Truncation1390741 Node: The Echo Area1392649 Node: Selective Display1394719 Node: Overlay Arrow1398734 Node: Temporary Displays1399831 Node: Overlays1403644 Node: Overlay Properties1404218 Node: Managing Overlays1408012 Node: Faces1410096 Node: Standard Faces1410938 Node: Merging Faces1411945 Node: Face Functions1413456 Node: Blinking1417433 Node: Inverse Video1419335 Node: Usual Display1420005 Node: Display Tables1422560 Node: Display Table Format1423426 Node: Active Display Table1425062 Node: Glyphs1426634 Node: ISO Latin 11428105 Node: Beeping1429291 Node: Window Systems1430254 Node: Calendar1431495 Node: Calendar Customizing1432342 Node: Holiday Customizing1435181 Node: Date Display Format1441244 Node: Time Display Format1442157 Node: Daylight Savings1443137 Node: Diary Customizing1446239 Node: Hebrew/Islamic Entries1450615 Node: Fancy Diary Display1453833 Node: Sexp Diary Entries1456482 Node: Appt Customizing1461169 Node: Tips1462537 Node: Style Tips1463156 Node: Compilation Tips1470656 Node: Documentation Tips1472553 Node: Comment Tips1478050 Node: Library Headers1481048 Node: GNU Emacs Internals1484945 Node: Building Emacs1485647 Node: Pure Storage1490206 Node: Garbage Collection1492833 Node: Writing Emacs Primitives1498828 Node: Object Internals1508337 Node: Buffer Internals1509671 Node: Window Internals1513134 Node: Process Internals1516566 Node: Standard Errors1518412 Node: Standard Buffer-Local Variables1521435 Node: Standard Keymaps1523748 Node: Standard Hooks1526765 Node: Antinews1529937 Node: Index1547825  End Tag Table