GNU Emacs Lisp Reference Manual

This is edition 3.0 of the GNU Emacs Lisp Reference Manual, corresponding to Emacs version 23.3.

IntroductionIntroduction and conventions used.
Lisp Data TypesData types of objects in Emacs Lisp.
NumbersNumbers and arithmetic functions.
Strings and CharactersStrings, and functions that work on them.
ListsLists, cons cells, and related functions.
Sequences Arrays VectorsLists, strings and vectors are called sequences. Certain functions act on any kind of sequence. The description of vectors is here as well.
Hash TablesVery fast lookup-tables.
SymbolsSymbols represent names, uniquely.
EvaluationHow Lisp expressions are evaluated.
Control StructuresConditionals, loops, nonlocal exits.
VariablesUsing symbols in programs to stand for values.
FunctionsA function is a Lisp program that can be invoked from other functions.
MacrosMacros are a way to extend the Lisp language.
CustomizationWriting customization declarations.
LoadingReading files of Lisp code into Lisp.
Byte CompilationCompilation makes programs run faster.
Advising FunctionsAdding to the definition of a function.
DebuggingTools and tips for debugging Lisp programs.
Read and PrintConverting Lisp objects to text and back.
MinibuffersUsing the minibuffer to read input.
Command LoopHow the editor command loop works, and how you can call its subroutines.
KeymapsDefining the bindings from keys to commands.
ModesDefining major and minor modes.
DocumentationWriting and using documentation strings.
FilesAccessing files.
Backups and Auto-SavingControlling how backups and auto-save files are made.
BuffersCreating and using buffer objects.
WindowsManipulating windows and displaying buffers.
FramesMaking multiple system-level windows.
PositionsBuffer positions and motion functions.
MarkersMarkers represent positions and update automatically when the text is changed.
TextExamining and changing text in buffers.
Non-ASCII CharactersNon-ASCII text in buffers and strings.
Searching and MatchingSearching buffers for strings or regexps.
Syntax TablesThe syntax table controls word and list parsing.
AbbrevsHow Abbrev mode works, and its data structures.
ProcessesRunning and communicating with subprocesses.
DisplayFeatures for controlling the screen display.
System InterfaceGetting the user id, system type, environment variables, and other such things.
Appendices
AntinewsInfo for users downgrading to Emacs 22.
GNU Free Documentation LicenseThe license for this documentation.
GPLConditions for copying and changing GNU Emacs.
TipsAdvice and coding conventions for Emacs Lisp.
GNU Emacs InternalsBuilding and dumping Emacs; internal data structures.
Standard ErrorsList of all error symbols.
Standard Buffer-Local Variables List of variables buffer-local in all buffers.
Standard KeymapsList of standard keymaps.
Standard HooksList of standard hook variables.

Index of Subsections

Notes from Xah Lee

This is edition 3.0 of the GNU Emacs Lisp Reference Manual, corresponding to Emacs version 23.3.

The HTML and CSS of this document has been reworked by Xah Lee.

Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with the Invariant Sections being ``GNU General Public License,'' with the Front-Cover texts being ``A GNU Manual,'' and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled ``GNU Free Documentation License.''

(a) The FSF's Back-Cover Text is: ``You have the freedom to copy and modify this GNU manual. Buying copies from the FSF supports it in developing GNU and promoting software freedom.''

blog comments powered by Disqus