Commit b8d4c8d0 authored by Glenn Morris's avatar Glenn Morris

Move here from ../../lispref

parent f69340d7
# Generated files
precious ^(config\.status|config\.cache)$
# arch-tag: dde817a2-94ff-4c6e-838c-bb5b33e7f0df
texput.log
elisp.??
elisp.???
configure
config.log
config.cache
config.status
Makefile
makefile
index.texi
elisp
elisp-?
elisp-??
vol1.*
vol2.*
elisp1*
elisp2*
This diff is collapsed.
# Makefile for the GNU Emacs Lisp Reference Manual.
# Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000,
# 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
# This file is part of GNU Emacs.
# GNU Emacs is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to
# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
# Standard configure variables.
srcdir = @srcdir@
# Tell make where to find source files; this is needed for the makefiles.
VPATH=@srcdir@
infodir = ../info
usermanualdir = $(srcdir)/../man
TEXI2DVI = texi2dvi
SHELL = /bin/sh
INSTALL_INFO = install-info
MAKEINFO = makeinfo --force
# The name of the manual:
VERSION=2.9
manual = elisp-manual-21-$(VERSION)
# List of all the texinfo files in the manual:
srcs = \
$(srcdir)/abbrevs.texi \
$(srcdir)/advice.texi \
$(srcdir)/anti.texi \
$(srcdir)/back.texi \
$(srcdir)/backups.texi \
$(srcdir)/buffers.texi \
$(srcdir)/commands.texi \
$(srcdir)/compile.texi \
$(srcdir)/control.texi \
$(srcdir)/customize.texi \
$(srcdir)/debugging.texi \
$(srcdir)/display.texi \
$(srcdir)/edebug.texi \
$(srcdir)/elisp.texi \
$(srcdir)/errors.texi \
$(srcdir)/eval.texi \
$(srcdir)/files.texi \
$(srcdir)/frames.texi \
$(srcdir)/functions.texi \
$(srcdir)/hash.texi \
$(srcdir)/help.texi \
$(srcdir)/hooks.texi \
$(srcdir)/internals.texi \
$(srcdir)/intro.texi \
$(srcdir)/keymaps.texi \
$(srcdir)/lists.texi \
$(srcdir)/loading.texi \
$(srcdir)/locals.texi \
$(srcdir)/macros.texi \
$(srcdir)/maps.texi \
$(srcdir)/markers.texi \
$(srcdir)/minibuf.texi \
$(srcdir)/modes.texi \
$(srcdir)/nonascii.texi \
$(srcdir)/numbers.texi \
$(srcdir)/objects.texi \
$(srcdir)/os.texi \
$(srcdir)/positions.texi \
$(srcdir)/processes.texi \
$(srcdir)/searching.texi \
$(srcdir)/sequences.texi \
$(srcdir)/streams.texi \
$(srcdir)/strings.texi \
$(srcdir)/symbols.texi \
$(srcdir)/syntax.texi \
$(srcdir)/text.texi \
$(srcdir)/tips.texi \
$(srcdir)/variables.texi \
$(srcdir)/windows.texi \
$(srcdir)/index.texi \
$(srcdir)/gpl.texi \
$(srcdir)/doclicense.texi
.PHONY: clean
# The info file is named `elisp'.
info: $(infodir)/elisp
$(infodir)/elisp: $(srcs)
cd $(srcdir); $(MAKEINFO) -I. -I$(infodir) elisp.texi -o $(infodir)/elisp
elisp.dvi: $(srcs)
$(TEXI2DVI) -I $(srcdir) -I $(usermanualdir) $(srcdir)/elisp.texi
# This is for use in a separate distro of the Emacs Lisp manual.
install: elisp
$(srcdir)/mkinstalldirs $(infodir)
cp elisp elisp-[1-9] elisp-[1-9][0-9] $(infodir)
${INSTALL_INFO} --info-dir=${infodir} ${infodir}/elisp
# This is for use in a separate distro of the Emacs Lisp manual.
elisp: $(srcs)
$(MAKEINFO) -I. -I$(srcdir) $(srcdir)/elisp.texi
clean:
rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \
*.vr *.vrs *.pg *.pgs *.ky *.kys
rm -f make.out core
distclean: clean
maintainer-clean: clean
rm -f elisp.dvi elisp.oaux
cd $(infodir); rm -f elisp elisp-[1-9] elisp-[1-9][0-9]
dist: $(infodir)/elisp elisp.dvi
-rm -rf temp
-mkdir temp
-mkdir temp/$(manual)
-ln $(srcdir)/README $(srcdir)/configure.in $(srcdir)/configure \
$(srcdir)/Makefile.in $(srcs) \
$(srcdir)/../man/texinfo.tex \
elisp.dvi elisp.aux elisp.??s \
$(infodir)/elisp $(infodir)/elisp-[1-9] $(infodir)/elisp-[1-9][0-9] \
temp/$(manual)
-(cd temp/$(manual); rm -f mkinstalldirs)
cp $(srcdir)/mkinstalldirs temp/$(manual)
(cd temp/$(manual); rm -f *~)
(cd temp; tar chf - $(manual)) | gzip > $(manual).tar.gz
-rm -rf temp
Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
Free Software Foundation, Inc.
See the end of the file for license conditions.
README for Edition 2.9 of the Emacs Lisp Reference Manual.
* This directory contains the texinfo source files for the Reference
Manual, make-permuted-index, and the latest version of texinfo.tex,
which handles forms that cannot be handled by the older versions of
texinfo.tex.
* Report Lisp Manual bugs to bug-lisp-manual@gnu.org. We don't read
these bug reports until it's time for a new edition. To report other
Emacs bugs, use bug-gnu-emacs@gnu.org. To ask questions, use the
newsgroup gnu.emacs.help.
* The Emacs Lisp Reference Manual is quite large. It totals around
1100 pages in smallbook format; the info files total over
2.5 megabytes.
* You can format this manual either for Info or for printing hardcopy
using TeX.
* You can buy nicely printed copies from the Free Software Foundation.
For info, send mail to gnu@gnu.org or phone 617-542-5942. Buying a
manual from the Free Software Foundation helps support our GNU
development work.
** This distribution contains a Makefile that you can use with GNU Make.
Otherwise, here are detailed instructions:
** HARDCOPY: A copy of the version of `texinfo.tex' that formats this
manual is included in this distribution.
The master file for formatting this manual for Tex is called
`elisp.texi'. It contains @include commands to include all the
chapters that make up the manual. In addition, `elisp.texi' has
the title page in a new format designed by Karl Berry, using the
@titlespec command.
To create a DVI file with a sorted index, execute the following
commands in the shell:
% ./configure
% make index.texi
% make elisp.dvi
*** To create a DVI file with a permuted index, you may experiment
with `make-permuted-index'.
** To make an Info file, you need to install Texinfo, then run
`./configure' and `make info'. To install the Info files, run
`make install'.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
\input /home/gd/gnu/doc/texinfo.tex @c -*-texinfo-*-
@c This is part of the GNU Emacs Lisp Reference Manual.
@c Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
@c Free Software Foundation, Inc.
@c See the file elisp.texi for copying conditions.
@c
@c %**start of header
@setfilename back-cover
@settitle GNU Emacs Lisp Reference Manual
@c %**end of header
.
@sp 7
@center @titlefont {GNU Emacs Lisp}
@sp 1
@quotation
Most of the GNU Emacs text editor is written in the programming
language called Emacs Lisp. You can write new code in Emacs Lisp and
install it as an extension to the editor. However, Emacs Lisp is more
than a mere ``extension language''; it is a full computer programming
language in its own right. You can use it as you would any other
programming language.
Because Emacs Lisp is designed for use in an editor, it has special
features for scanning and parsing text as well as features for handling
files, buffers, displays, subprocesses, and so on. Emacs Lisp is
closely integrated with the editing facilities; thus, editing commands
are functions that can also conveniently be called from Lisp programs,
and parameters for customization are ordinary Lisp variables.
This manual describes Emacs Lisp. Generally speaking, the earlier
chapters describe features of Emacs Lisp that have counterparts in
many programming languages, and later chapters describe features that
are peculiar to Emacs Lisp or relate specifically to editing.
@end quotation
@hfil
@bye
@ignore
arch-tag: ac7694c8-1f02-4b42-9531-33ba13b179e1
@end ignore
This diff is collapsed.
\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename book-spine
@settitle book-spine
@c %**end of header
@c need dot in text so first space command works!
.
@sp 7
@center @titlefont{GNU Emacs Lisp Reference Manual}
@sp 5
@center GNU
@center Emacs Version 22.1
@center for Unix Users
@sp 5
@center by
@center Bil Lewis,
@center Dan LaLiberte,
@center and the
@center GNU Manual Group
@sp 5
@center Free Software Foundation
@bye
@ignore
arch-tag: 4466c7ca-e549-4119-948c-6eed34e1ff87
@end ignore
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
dnl Process this file with autoconf to produce a configure script.
AC_INIT(elisp.texi)
AC_OUTPUT(Makefile)
m4_if(dnl Do not change this comment
arch-tag: 61db4227-0d2b-4c4d-ad54-ca9a1ee518ea
)dnl
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
@c -*-texinfo-*-
@c This is part of the GNU Emacs Lisp Reference Manual.
@c Copyright (C) 1990, 1991, 1992, 1993, 1999, 2001, 2002, 2003, 2004,
@c 2005, 2006, 2007 Free Software Foundation, Inc.
@c See the file elisp.texi for copying conditions.
@setfilename ../info/errors
@node Standard Errors, Standard Buffer-Local Variables, GNU Emacs Internals, Top
@appendix Standard Errors
@cindex standard errors
Here is the complete list of the error symbols in standard Emacs,
grouped by concept. The list includes each symbol's message (on the
@code{error-message} property of the symbol) and a cross reference to a
description of how the error can occur.
Each error symbol has an @code{error-conditions} property that is a
list of symbols. Normally this list includes the error symbol itself
and the symbol @code{error}. Occasionally it includes additional
symbols, which are intermediate classifications, narrower than
@code{error} but broader than a single error symbol. For example, all
the errors in accessing files have the condition @code{file-error}. If
we do not say here that a certain error symbol has additional error
conditions, that means it has none.
As a special exception, the error symbol @code{quit} does not have the
condition @code{error}, because quitting is not considered an error.
@xref{Errors}, for an explanation of how errors are generated and
handled.
@table @code
@item @var{symbol}
@var{string}; @var{reference}.
@item error
@code{"error"}@*
@xref{Errors}.
@item quit
@code{"Quit"}@*
@xref{Quitting}.
@item args-out-of-range
@code{"Args out of range"}@*
This happens when trying to access an element beyond the range of a
sequence or buffer.@*
@xref{Sequences Arrays Vectors}, @xref{Text}.
@item arith-error
@code{"Arithmetic error"}@*
@xref{Arithmetic Operations}.
@item beginning-of-buffer
@code{"Beginning of buffer"}@*
@xref{Character Motion}.
@item buffer-read-only
@code{"Buffer is read-only"}@*
@xref{Read Only Buffers}.
@item coding-system-error
@code{"Invalid coding system"}@*
@xref{Lisp and Coding Systems}.
@item cyclic-function-indirection
@code{"Symbol's chain of function indirections\@* contains a loop"}@*
@xref{Function Indirection}.
@item cyclic-variable-indirection
@code{"Symbol's chain of variable indirections\@* contains a loop"}@*
@xref{Variable Aliases}.
@item end-of-buffer
@code{"End of buffer"}@*
@xref{Character Motion}.
@item end-of-file
@code{"End of file during parsing"}@*
Note that this is not a subcategory of @code{file-error},
because it pertains to the Lisp reader, not to file I/O.@*
@xref{Input Functions}.
@item file-already-exists
This is a subcategory of @code{file-error}.@*
@xref{Writing to Files}.
@item file-date-error
This is a subcategory of @code{file-error}. It occurs when
@code{copy-file} tries and fails to set the last-modification time of
the output file.@*
@xref{Changing Files}.
@item file-error
We do not list the error-strings of this error and its subcategories,
because the error message is normally constructed from the data items
alone when the error condition @code{file-error} is present. Thus,
the error-strings are not very relevant. However, these error symbols
do have @code{error-message} properties, and if no data is provided,
the @code{error-message} property @emph{is} used.@*
@xref{Files}.
@item file-locked
This is a subcategory of @code{file-error}.@*
@xref{File Locks}.
@item file-supersession
This is a subcategory of @code{file-error}.@*
@xref{Modification Time}.
@item ftp-error
This is a subcategory of @code{file-error}, which results from problems
in accessing a remote file using ftp.@*
@xref{Remote Files,,, emacs, The GNU Emacs Manual}.
@item invalid-function
@code{"Invalid function"}@*
@xref{Function Indirection}.
@item invalid-read-syntax
@code{"Invalid read syntax"}@*
@xref{Printed Representation}.
@item invalid-regexp
@code{"Invalid regexp"}@*
@xref{Regular Expressions}.
@item mark-inactive
@code{"The mark is not active now"}@*
@xref{The Mark}.
@item no-catch
@code{"No catch for tag"}@*
@xref{Catch and Throw}.
@item scan-error
@code{"Scan error"}@*
This happens when certain syntax-parsing functions
find invalid syntax or mismatched parentheses.@*
@xref{List Motion}, and @ref{Parsing Expressions}.
@item search-failed
@code{"Search failed"}@*
@xref{Searching and Matching}.
@item setting-constant
@code{"Attempt to set a constant symbol"}@*
The values of the symbols @code{nil} and @code{t},
and any symbols that start with @samp{:},
may not be changed.@*
@xref{Constant Variables, , Variables that Never Change}.
@item text-read-only
@code{"Text is read-only"}@*
This is a subcategory of @code{buffer-read-only}.@*
@xref{Special Properties}.
@item undefined-color
@code{"Undefined color"}@*
@xref{Color Names}.
@item void-function
@code{"Symbol's function definition is void"}@*
@xref{Function Cells}.
@item void-variable
@code{"Symbol's value as variable is void"}@*
@xref{Accessing Variables}.
@item wrong-number-of-arguments
@code{"Wrong number of arguments"}@*
@xref{Classifying Lists}.
@item wrong-type-argument
@code{"Wrong type argument"}@*
@xref{Type Predicates}.
@end table
These kinds of error, which are classified as special cases of
@code{arith-error}, can occur on certain systems for invalid use of
mathematical functions.
@table @code
@item domain-error
@code{"Arithmetic domain error"}@*
@xref{Math Functions}.
@item overflow-error
@code{"Arithmetic overflow error"}@*
This is a subcategory of @code{domain-error}.@*
@xref{Math Functions}.
@item range-error
@code{"Arithmetic range error"}@*
@xref{Math Functions}.
@item singularity-error
@code{"Arithmetic singularity error"}@*
This is a subcategory of @code{domain-error}.@*
@xref{Math Functions}.
@item underflow-error
@code{"Arithmetic underflow error"}@*
This is a subcategory of @code{domain-error}.@*
@xref{Math Functions}.
@end table
@ignore
arch-tag: 717c6048-5d9d-4c7d-9a62-df57390b6f19
@end ignore
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
@c -*-texinfo-*-
@setfilename ../info/index
@c Indexing guidelines
@c I assume that all indexes will be combined.
@c Therefore, if a generated findex and permutations
@c cover the ways an index user would look up the entry,
@c then no cindex is added.
@c Concept index (cindex) entries will also be permuted. Therefore, they
@c have no commas and few irrelevant connectives in them.
@c I tried to include words in a cindex that give the context of the entry,
@c particularly if there is more than one entry for the same concept.
@c For example, "nil in keymap"
@c Similarly for explicit findex and vindex entries, e.g. "print example".
@c Error codes are given cindex entries, e.g. "end-of-file error".
@c pindex is used for .el files and Unix programs
@node Index, , Standard Hooks, Top
@unnumbered Index
@c Print the indices
@printindex fn
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.