diff options
| author | Tom Tromey | 2013-07-06 23:18:58 -0600 |
|---|---|---|
| committer | Tom Tromey | 2013-07-06 23:18:58 -0600 |
| commit | 6dacdad5fcb278e5a16b38bb81786aac9ca27be4 (patch) | |
| tree | f5f331ea361ba0f99e0f9b638d183ad492a7da31 /doc/lispref | |
| parent | 0a6f2ff0c8ceb29703e76cddd46ea3f176dd873a (diff) | |
| parent | 219afb88d9d484393418820d1c08dc93299110ec (diff) | |
| download | emacs-6dacdad5fcb278e5a16b38bb81786aac9ca27be4.tar.gz emacs-6dacdad5fcb278e5a16b38bb81786aac9ca27be4.zip | |
merge from trunk
this merges frmo trunk and fixes various build issues.
this needed a few ugly tweaks.
this hangs in "make check" now
Diffstat (limited to 'doc/lispref')
| -rw-r--r-- | doc/lispref/ChangeLog | 78 | ||||
| -rw-r--r-- | doc/lispref/Makefile.in | 8 | ||||
| -rw-r--r-- | doc/lispref/buffers.texi | 7 | ||||
| -rw-r--r-- | doc/lispref/debugging.texi | 2 | ||||
| -rw-r--r-- | doc/lispref/display.texi | 60 | ||||
| -rw-r--r-- | doc/lispref/elisp.texi | 21 | ||||
| -rw-r--r-- | doc/lispref/files.texi | 6 | ||||
| -rw-r--r-- | doc/lispref/functions.texi | 3 | ||||
| -rw-r--r-- | doc/lispref/keymaps.texi | 11 | ||||
| -rw-r--r-- | doc/lispref/loading.texi | 38 | ||||
| -rw-r--r-- | doc/lispref/modes.texi | 6 | ||||
| -rw-r--r-- | doc/lispref/nonascii.texi | 3 | ||||
| -rw-r--r-- | doc/lispref/numbers.texi | 5 | ||||
| -rw-r--r-- | doc/lispref/package.texi | 2 | ||||
| -rw-r--r-- | doc/lispref/syntax.texi | 5 | ||||
| -rw-r--r-- | doc/lispref/text.texi | 24 | ||||
| -rw-r--r-- | doc/lispref/tips.texi | 12 | ||||
| -rw-r--r-- | doc/lispref/variables.texi | 2 |
18 files changed, 210 insertions, 83 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 259bf9a78a6..e4bc6eb5bcc 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog | |||
| @@ -1,3 +1,81 @@ | |||
| 1 | 2013-07-06 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * nonascii.texi (Text Representations): Document that | ||
| 4 | multibyte-string-p returns nil for non-string objects. | ||
| 5 | |||
| 6 | 2013-07-06 Glenn Morris <rgm@gnu.org> | ||
| 7 | |||
| 8 | * elisp.texi (Top): Move WWW_GNU_ORG section outside @copying. | ||
| 9 | |||
| 10 | 2013-07-03 Glenn Morris <rgm@gnu.org> | ||
| 11 | |||
| 12 | * debugging.texi (Debugging): | ||
| 13 | * files.texi (File Attributes, Changing Files): Fix cross-references. | ||
| 14 | |||
| 15 | * package.texi (Package Archives): Fix @url call. | ||
| 16 | |||
| 17 | * syntax.texi (Syntax Table Functions): Mention describe-syntax. | ||
| 18 | |||
| 19 | 2013-06-29 Eli Zaretskii <eliz@gnu.org> | ||
| 20 | |||
| 21 | * display.texi (Bidirectional Display): Document move-point-visually. | ||
| 22 | |||
| 23 | 2013-06-29 Xue Fuqiao <xfq.free@gmail.com> | ||
| 24 | |||
| 25 | * buffers.texi (Buffer File Name): Fix typo. | ||
| 26 | |||
| 27 | 2013-06-26 Christopher Schmidt <christopher@ch.ristopher.com> | ||
| 28 | |||
| 29 | * tips.texi (Coding Conventions): Improve wording. | ||
| 30 | |||
| 31 | 2013-06-24 Glenn Morris <rgm@gnu.org> | ||
| 32 | |||
| 33 | * loading.texi (Autoload): Fix typo. | ||
| 34 | |||
| 35 | * variables.texi (Lexical Binding): Fix typo. | ||
| 36 | |||
| 37 | * functions.texi (Anonymous Functions): Put back ' removed 2012-10-23. | ||
| 38 | |||
| 39 | 2013-06-23 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 40 | |||
| 41 | * display.texi (ImageMagick Images): Mention :max-width and | ||
| 42 | :max-height. | ||
| 43 | |||
| 44 | 2013-06-20 Paul Eggert <eggert@cs.ucla.edu> | ||
| 45 | |||
| 46 | * numbers.texi (Math Functions): Remove obsolete function log10. | ||
| 47 | |||
| 48 | 2013-06-19 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 49 | |||
| 50 | * modes.texi (Mode Line Data, Properties in Mode): Advertise `keymap' | ||
| 51 | rather than `local-map'. | ||
| 52 | |||
| 53 | * keymaps.texi (Active Keymaps): Fix documentation of | ||
| 54 | set-temporary-overlay-map and overriding-terminal-local-map. | ||
| 55 | |||
| 56 | 2013-06-19 Glenn Morris <rgm@gnu.org> | ||
| 57 | |||
| 58 | * Makefile.in (dist): Edit more configure variables. | ||
| 59 | Try to check that we do not miss any in future. | ||
| 60 | |||
| 61 | 2013-06-17 Juanma Barranquero <lekktu@gmail.com> | ||
| 62 | |||
| 63 | * text.texi (Undo, Changing Properties): Fix typos. | ||
| 64 | |||
| 65 | 2013-06-17 Lars Magne Ingebrigtsen <larsi@gnus.org> | ||
| 66 | |||
| 67 | * text.texi (Changing Properties): Document `add-face-text-property'. | ||
| 68 | |||
| 69 | 2013-06-17 Kenichi Handa <handa@gnu.org> | ||
| 70 | |||
| 71 | * display.texi (Face Attributes): Refer to "Low-Level font" (not | ||
| 72 | "Font Selection") in the explanation of :font attribute (bug#14629). | ||
| 73 | |||
| 74 | 2013-06-13 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 75 | |||
| 76 | * loading.texi (Hooks for Loading): Don't document after-load-alist. | ||
| 77 | Document with-eval-after-load instead of eval-after-load. | ||
| 78 | |||
| 1 | 2013-06-11 Xue Fuqiao <xfq.free@gmail.com> | 79 | 2013-06-11 Xue Fuqiao <xfq.free@gmail.com> |
| 2 | 80 | ||
| 3 | * files.texi (File Name Expansion): Make the example more | 81 | * files.texi (File Name Expansion): Make the example more |
diff --git a/doc/lispref/Makefile.in b/doc/lispref/Makefile.in index 006c09d780c..c548b67d4ca 100644 --- a/doc/lispref/Makefile.in +++ b/doc/lispref/Makefile.in | |||
| @@ -19,6 +19,9 @@ | |||
| 19 | 19 | ||
| 20 | SHELL = /bin/sh | 20 | SHELL = /bin/sh |
| 21 | 21 | ||
| 22 | # NB If you add any more configure variables, | ||
| 23 | # update the sed rules in the dist target below. | ||
| 24 | |||
| 22 | # Standard configure variables. | 25 | # Standard configure variables. |
| 23 | srcdir = @srcdir@ | 26 | srcdir = @srcdir@ |
| 24 | 27 | ||
| @@ -164,7 +167,12 @@ dist: | |||
| 164 | -e 's/^\(buildinfodir *=\).*/\1 ./' \ | 167 | -e 's/^\(buildinfodir *=\).*/\1 ./' \ |
| 165 | -e 's/^\(clean:.*\)/\1 infoclean/' \ | 168 | -e 's/^\(clean:.*\)/\1 infoclean/' \ |
| 166 | -e "s/@ver[s]ion@/${version}/" \ | 169 | -e "s/@ver[s]ion@/${version}/" \ |
| 170 | -e 's/@MAKE[I]NFO@/makeinfo/' -e 's/@MK[D]IR_P@/mkdir -p/' \ | ||
| 171 | -e 's/@IN[F]O_EXT@/.info/' -e 's/@IN[F]O_OPTS@//' \ | ||
| 167 | ${srcdir}/Makefile.in > emacs-lispref-${version}/Makefile | 172 | ${srcdir}/Makefile.in > emacs-lispref-${version}/Makefile |
| 173 | @if grep '@[a-zA-Z_]*@' emacs-lispref-${version}/Makefile; then \ | ||
| 174 | echo "Unexpanded configure variables in Makefile?" 1>&2; exit 1; \ | ||
| 175 | fi | ||
| 168 | tar -cf emacs-lispref-${version}.tar emacs-lispref-${version} | 176 | tar -cf emacs-lispref-${version}.tar emacs-lispref-${version} |
| 169 | rm -rf emacs-lispref-${version} | 177 | rm -rf emacs-lispref-${version} |
| 170 | 178 | ||
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi index 7ed1876e4b1..01269851250 100644 --- a/doc/lispref/buffers.texi +++ b/doc/lispref/buffers.texi | |||
| @@ -488,8 +488,9 @@ Normally, this function asks the user for confirmation if there | |||
| 488 | already is a buffer visiting @var{filename}. If @var{no-query} is | 488 | already is a buffer visiting @var{filename}. If @var{no-query} is |
| 489 | non-@code{nil}, that prevents asking this question. If there already | 489 | non-@code{nil}, that prevents asking this question. If there already |
| 490 | is a buffer visiting @var{filename}, and the user confirms or | 490 | is a buffer visiting @var{filename}, and the user confirms or |
| 491 | @var{query} is non-@code{nil}, this function makes the new buffer name | 491 | @var{no-query} is non-@code{nil}, this function makes the new |
| 492 | unique by appending a number inside of @samp{<@dots{}>} to @var{filename}. | 492 | buffer name unique by appending a number inside of @samp{<@dots{}>} to |
| 493 | @var{filename}. | ||
| 493 | 494 | ||
| 494 | If @var{along-with-file} is non-@code{nil}, that means to assume that | 495 | If @var{along-with-file} is non-@code{nil}, that means to assume that |
| 495 | the former visited file has been renamed to @var{filename}. In this | 496 | the former visited file has been renamed to @var{filename}. In this |
| @@ -1064,7 +1065,7 @@ Buffer foo.changed modified; kill anyway? (yes or no) @kbd{yes} | |||
| 1064 | @end deffn | 1065 | @end deffn |
| 1065 | 1066 | ||
| 1066 | @defvar kill-buffer-query-functions | 1067 | @defvar kill-buffer-query-functions |
| 1067 | After confirming unsaved changes, @code{kill-buffer} calls the functions | 1068 | Before confirming unsaved changes, @code{kill-buffer} calls the functions |
| 1068 | in the list @code{kill-buffer-query-functions}, in order of appearance, | 1069 | in the list @code{kill-buffer-query-functions}, in order of appearance, |
| 1069 | with no arguments. The buffer being killed is the current buffer when | 1070 | with no arguments. The buffer being killed is the current buffer when |
| 1070 | they are called. The idea of this feature is that these functions will | 1071 | they are called. The idea of this feature is that these functions will |
diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi index 24629465525..335e3f802d2 100644 --- a/doc/lispref/debugging.texi +++ b/doc/lispref/debugging.texi | |||
| @@ -32,7 +32,7 @@ program. | |||
| 32 | 32 | ||
| 33 | @item | 33 | @item |
| 34 | You can use the ERT package to write regression tests for the program. | 34 | You can use the ERT package to write regression tests for the program. |
| 35 | @xref{Top,the ERT manual,, ERT, ERT: Emacs Lisp Regression Testing}. | 35 | @xref{Top,the ERT manual,, ert, ERT: Emacs Lisp Regression Testing}. |
| 36 | 36 | ||
| 37 | @item | 37 | @item |
| 38 | You can profile the program to get hints about how to make it more efficient. | 38 | You can profile the program to get hints about how to make it more efficient. |
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index 4adcfdf8f4f..44fbc66a60e 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi | |||
| @@ -1655,26 +1655,26 @@ if it becomes empty (i.e., if its length becomes zero). If you give | |||
| 1655 | an empty overlay a non-@code{nil} @code{evaporate} property, that deletes | 1655 | an empty overlay a non-@code{nil} @code{evaporate} property, that deletes |
| 1656 | it immediately. | 1656 | it immediately. |
| 1657 | 1657 | ||
| 1658 | @item local-map | ||
| 1659 | @cindex keymap of character (and overlays) | ||
| 1660 | @kindex local-map @r{(overlay property)} | ||
| 1661 | If this property is non-@code{nil}, it specifies a keymap for a portion | ||
| 1662 | of the text. The property's value replaces the buffer's local map, when | ||
| 1663 | the character after point is within the overlay. @xref{Active Keymaps}. | ||
| 1664 | |||
| 1665 | @item keymap | 1658 | @item keymap |
| 1659 | @cindex keymap of character (and overlays) | ||
| 1666 | @kindex keymap @r{(overlay property)} | 1660 | @kindex keymap @r{(overlay property)} |
| 1667 | The @code{keymap} property is similar to @code{local-map} but overrides the | 1661 | If this property is non-@code{nil}, it specifies a keymap for a portion of the |
| 1668 | buffer's local map (and the map specified by the @code{local-map} | 1662 | text. This keymap is used when the character after point is within the |
| 1669 | property) rather than replacing it. | 1663 | overlay, and takes precedence over most other keymaps. @xref{Active Keymaps}. |
| 1664 | |||
| 1665 | @item local-map | ||
| 1666 | @kindex local-map @r{(overlay property)} | ||
| 1667 | The @code{local-map} property is similar to @code{keymap} but replaces the | ||
| 1668 | buffer's local map rather than augmenting existing keymaps. This also means it | ||
| 1669 | has lower precedence than minor mode keymaps. | ||
| 1670 | @end table | 1670 | @end table |
| 1671 | 1671 | ||
| 1672 | The @code{local-map} and @code{keymap} properties do not affect a | 1672 | The @code{keymap} and @code{local-map} properties do not affect a |
| 1673 | string displayed by the @code{before-string}, @code{after-string}, or | 1673 | string displayed by the @code{before-string}, @code{after-string}, or |
| 1674 | @code{display} properties. This is only relevant for mouse clicks and | 1674 | @code{display} properties. This is only relevant for mouse clicks and |
| 1675 | other mouse events that fall on the string, since point is never on | 1675 | other mouse events that fall on the string, since point is never on |
| 1676 | the string. To bind special mouse events for the string, assign it a | 1676 | the string. To bind special mouse events for the string, assign it a |
| 1677 | @code{local-map} or @code{keymap} text property. @xref{Special | 1677 | @code{keymap} or @code{local-map} text property. @xref{Special |
| 1678 | Properties}. | 1678 | Properties}. |
| 1679 | 1679 | ||
| 1680 | @node Finding Overlays | 1680 | @node Finding Overlays |
| @@ -2126,7 +2126,8 @@ used automatically to handle certain shades of gray. | |||
| 2126 | 2126 | ||
| 2127 | @item :font | 2127 | @item :font |
| 2128 | The font used to display the face. Its value should be a font object. | 2128 | The font used to display the face. Its value should be a font object. |
| 2129 | @xref{Font Selection}, for information about font objects. | 2129 | @xref{Low-Level Font}, for information about font objects, font specs, |
| 2130 | and font entities. | ||
| 2130 | 2131 | ||
| 2131 | When specifying this attribute using @code{set-face-attribute} | 2132 | When specifying this attribute using @code{set-face-attribute} |
| 2132 | (@pxref{Attribute Functions}), you may also supply a font spec, a font | 2133 | (@pxref{Attribute Functions}), you may also supply a font spec, a font |
| @@ -3260,7 +3261,9 @@ to @var{value}. | |||
| 3260 | properties are intermediate between a font object and a font spec: | 3261 | properties are intermediate between a font object and a font spec: |
| 3261 | like a font object, and unlike a font spec, it refers to a single, | 3262 | like a font object, and unlike a font spec, it refers to a single, |
| 3262 | specific font. Unlike a font object, creating a font entity does not | 3263 | specific font. Unlike a font object, creating a font entity does not |
| 3263 | load the contents of that font into computer memory. | 3264 | load the contents of that font into computer memory. Emacs may open |
| 3265 | multiple font objects of different sizes from a single font entity | ||
| 3266 | referring to a scalable font. | ||
| 3264 | 3267 | ||
| 3265 | @defun find-font font-spec &optional frame | 3268 | @defun find-font font-spec &optional frame |
| 3266 | This function returns a font entity that best matches the font spec | 3269 | This function returns a font entity that best matches the font spec |
| @@ -4650,6 +4653,15 @@ image. If only one of them is specified, the other one will be | |||
| 4650 | calculated so as to preserve the aspect ratio. If both are specified, | 4653 | calculated so as to preserve the aspect ratio. If both are specified, |
| 4651 | aspect ratio may not be preserved. | 4654 | aspect ratio may not be preserved. |
| 4652 | 4655 | ||
| 4656 | @item :max-width, :max-height | ||
| 4657 | The @code{:max-width} and @code{:max-height} keywords are used for | ||
| 4658 | scaling if the size of the image of the image exceeds these values. | ||
| 4659 | If @code{:width} is set it will have precedence over @code{max-width}, | ||
| 4660 | and if @code{:height} is set it will have precedence over | ||
| 4661 | @code{max-height}, but you can otherwise mix these keywords as you | ||
| 4662 | wish. @code{:max-width} and @code{:max-height} will always preserve | ||
| 4663 | the aspect ratio. | ||
| 4664 | |||
| 4653 | @item :rotation | 4665 | @item :rotation |
| 4654 | Specifies a rotation angle in degrees. | 4666 | Specifies a rotation angle in degrees. |
| 4655 | 4667 | ||
| @@ -6419,6 +6431,26 @@ determined dynamically by Emacs. For buffers whose value of | |||
| 6419 | buffers, this function always returns @code{left-to-right}. | 6431 | buffers, this function always returns @code{left-to-right}. |
| 6420 | @end defun | 6432 | @end defun |
| 6421 | 6433 | ||
| 6434 | @cindex visual-order cursor motion | ||
| 6435 | Sometimes there's a need to move point in strict visual order, | ||
| 6436 | either to the left or to the right of its current screen position. | ||
| 6437 | Emacs provides a primitive to do that. | ||
| 6438 | |||
| 6439 | @defun move-point-visually direction | ||
| 6440 | This function moves point of the currently selected window to the | ||
| 6441 | buffer position that appears immediately to the right or to the left | ||
| 6442 | of point on the screen. If @var{direction} is positive, point will | ||
| 6443 | move one screen position to the right, otherwise it will move one | ||
| 6444 | screen position to the left. Note that, depending on the surrounding | ||
| 6445 | bidirectional context, this could potentially move point many buffer | ||
| 6446 | positions away. If invoked at the end of a screen line, the function | ||
| 6447 | moves point to the rightmost or leftmost screen position of the next | ||
| 6448 | or previous screen line, as appropriate for the value of | ||
| 6449 | @var{direction}. | ||
| 6450 | |||
| 6451 | The function returns the new buffer position as its value. | ||
| 6452 | @end defun | ||
| 6453 | |||
| 6422 | @cindex layout on display, and bidirectional text | 6454 | @cindex layout on display, and bidirectional text |
| 6423 | @cindex jumbled display of bidirectional text | 6455 | @cindex jumbled display of bidirectional text |
| 6424 | @cindex concatenating bidirectional strings | 6456 | @cindex concatenating bidirectional strings |
diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi index 343d9cc98e2..0d9432d5e01 100644 --- a/doc/lispref/elisp.texi +++ b/doc/lispref/elisp.texi | |||
| @@ -97,16 +97,6 @@ This is edition @value{VERSION} of the @cite{GNU Emacs Lisp Reference Manual},@* | |||
| 97 | This is the @cite{GNU Emacs Lisp Reference Manual} | 97 | This is the @cite{GNU Emacs Lisp Reference Manual} |
| 98 | @end ifnottex | 98 | @end ifnottex |
| 99 | corresponding to Emacs version @value{EMACSVER}. | 99 | corresponding to Emacs version @value{EMACSVER}. |
| 100 | @ifset WWW_GNU_ORG | ||
| 101 | @html | ||
| 102 | <p>The homepage for GNU Emacs is at | ||
| 103 | <a href="/software/emacs/">http://www.gnu.org/software/emacs/</a>.<br> | ||
| 104 | For information on using Emacs, refer to | ||
| 105 | the <a href="/software/emacs/manual/html_node/emacs/index.html">Emacs | ||
| 106 | Manual</a>.<br> To view this manual in other formats, | ||
| 107 | click <a href="/software/emacs/manual/elisp.html">here</a>. | ||
| 108 | @end html | ||
| 109 | @end ifset | ||
| 110 | 100 | ||
| 111 | Copyright @copyright{} 1990--1996, 1998--2013 Free Software Foundation, Inc. | 101 | Copyright @copyright{} 1990--1996, 1998--2013 Free Software Foundation, Inc. |
| 112 | 102 | ||
| @@ -167,6 +157,17 @@ Cover art by Etienne Suvasa. | |||
| 167 | @node Top | 157 | @node Top |
| 168 | @top Emacs Lisp | 158 | @top Emacs Lisp |
| 169 | 159 | ||
| 160 | @ifset WWW_GNU_ORG | ||
| 161 | @html | ||
| 162 | <p>The homepage for GNU Emacs is at | ||
| 163 | <a href="/software/emacs/">http://www.gnu.org/software/emacs/</a>.<br> | ||
| 164 | For information on using Emacs, refer to the | ||
| 165 | <a href="/software/emacs/manual/emacs.html">Emacs Manual</a>.<br> | ||
| 166 | To view this manual in other formats, click | ||
| 167 | <a href="/software/emacs/manual/elisp.html">here</a>. | ||
| 168 | @end html | ||
| 169 | @end ifset | ||
| 170 | |||
| 170 | @insertcopying | 171 | @insertcopying |
| 171 | @end ifnottex | 172 | @end ifnottex |
| 172 | 173 | ||
diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi index 704ecfb6446..951d55ac90f 100644 --- a/doc/lispref/files.texi +++ b/doc/lispref/files.texi | |||
| @@ -1115,7 +1115,7 @@ permissions} of @var{filename}, as an integer. It recursively follows | |||
| 1115 | symbolic links in @var{filename} at all levels. If @var{filename} | 1115 | symbolic links in @var{filename} at all levels. If @var{filename} |
| 1116 | does not exist, the return value is @code{nil}. | 1116 | does not exist, the return value is @code{nil}. |
| 1117 | 1117 | ||
| 1118 | @xref{File Permissions,,, coreutils, The @sc{gnu} @code{Coreutils} | 1118 | @xref{File permissions,,, coreutils, The @sc{gnu} @code{Coreutils} |
| 1119 | Manual}, for a description of mode bits. If the low-order bit is 1, | 1119 | Manual}, for a description of mode bits. If the low-order bit is 1, |
| 1120 | then the file is executable by all users, if the second-lowest-order | 1120 | then the file is executable by all users, if the second-lowest-order |
| 1121 | bit is 1, then the file is writable by all users, etc. The highest | 1121 | bit is 1, then the file is writable by all users, etc. The highest |
| @@ -1625,7 +1625,7 @@ octal numbers to enter @var{mode}. For example, | |||
| 1625 | @noindent | 1625 | @noindent |
| 1626 | specifies that the file should be readable and writable for its owner, | 1626 | specifies that the file should be readable and writable for its owner, |
| 1627 | readable for group members, and readable for all other users. | 1627 | readable for group members, and readable for all other users. |
| 1628 | @xref{File Permissions,,, coreutils, The @sc{gnu} @code{Coreutils} | 1628 | @xref{File permissions,,, coreutils, The @sc{gnu} @code{Coreutils} |
| 1629 | Manual}, for a description of mode bit specifications. | 1629 | Manual}, for a description of mode bit specifications. |
| 1630 | 1630 | ||
| 1631 | Interactively, @var{mode} is read from the minibuffer using | 1631 | Interactively, @var{mode} is read from the minibuffer using |
| @@ -1676,7 +1676,7 @@ the permissions on which the specification is based are taken from the | |||
| 1676 | mode bits of @var{base-file}. If @var{base-file} is omitted or | 1676 | mode bits of @var{base-file}. If @var{base-file} is omitted or |
| 1677 | @code{nil}, the function uses @code{0} as the base mode bits. The | 1677 | @code{nil}, the function uses @code{0} as the base mode bits. The |
| 1678 | complete and relative specifications can be combined, as in | 1678 | complete and relative specifications can be combined, as in |
| 1679 | @code{"u+r,g+rx,o+r,g-w"}. @xref{File Permissions,,, coreutils, The | 1679 | @code{"u+r,g+rx,o+r,g-w"}. @xref{File permissions,,, coreutils, The |
| 1680 | @sc{gnu} @code{Coreutils} Manual}, for a description of file mode | 1680 | @sc{gnu} @code{Coreutils} Manual}, for a description of file mode |
| 1681 | specifications. | 1681 | specifications. |
| 1682 | @end defun | 1682 | @end defun |
diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi index 7768c147827..fcd345ef83b 100644 --- a/doc/lispref/functions.texi +++ b/doc/lispref/functions.texi | |||
| @@ -974,10 +974,11 @@ Note that we do not quote the @code{lambda} form. | |||
| 974 | compiled. This would not happen if, say, you had constructed the | 974 | compiled. This would not happen if, say, you had constructed the |
| 975 | anonymous function by quoting it as a list: | 975 | anonymous function by quoting it as a list: |
| 976 | 976 | ||
| 977 | @c Do not unquote this lambda! | ||
| 977 | @example | 978 | @example |
| 978 | @group | 979 | @group |
| 979 | (defun double-property (symbol prop) | 980 | (defun double-property (symbol prop) |
| 980 | (change-property symbol prop (lambda (x) (* 2 x)))) | 981 | (change-property symbol prop '(lambda (x) (* 2 x)))) |
| 981 | @end group | 982 | @end group |
| 982 | @end example | 983 | @end example |
| 983 | 984 | ||
diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi index 822e952ef98..ef020364082 100644 --- a/doc/lispref/keymaps.texi +++ b/doc/lispref/keymaps.texi | |||
| @@ -663,17 +663,16 @@ additional active keymaps through the variable | |||
| 663 | 663 | ||
| 664 | The highest precedence normal keymap comes from the @code{keymap} | 664 | The highest precedence normal keymap comes from the @code{keymap} |
| 665 | text or overlay property. If that is non-@code{nil}, it is the first | 665 | text or overlay property. If that is non-@code{nil}, it is the first |
| 666 | keymap to be processed, in normal circumstances. Next comes | 666 | keymap to be processed, in normal circumstances. |
| 667 | any keymap added by the function @code{set-temporary-overlay-map}. | ||
| 668 | @xref{Controlling Active Maps}. | ||
| 669 | 667 | ||
| 670 | However, there are also special ways for programs to substitute | 668 | However, there are also special ways for programs to substitute |
| 671 | other keymaps for some of those. The variable | 669 | other keymaps for some of those. The variable |
| 672 | @code{overriding-local-map}, if non-@code{nil}, specifies a keymap | 670 | @code{overriding-local-map}, if non-@code{nil}, specifies a keymap |
| 673 | that replaces all the usual active keymaps except the global keymap. | 671 | that replaces all the usual active keymaps except the global keymap. |
| 674 | Another way to do this is with @code{overriding-terminal-local-map}; | 672 | |
| 675 | it operates on a per-terminal basis. These variables are documented | 673 | The very highest precedence keymap comes from |
| 676 | below. | 674 | @code{overriding-terminal-local-map}; it operates on a per-terminal basis and |
| 675 | is normally used for modal/transient keybindings. | ||
| 677 | 676 | ||
| 678 | @cindex major mode keymap | 677 | @cindex major mode keymap |
| 679 | Since every buffer that uses the same major mode normally uses the | 678 | Since every buffer that uses the same major mode normally uses the |
diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi index 5c92307f7d5..dab8e8d1255 100644 --- a/doc/lispref/loading.texi +++ b/doc/lispref/loading.texi | |||
| @@ -461,7 +461,7 @@ and calls @code{define-key}; not even if the variable name is the same | |||
| 461 | symbol @var{function}. | 461 | symbol @var{function}. |
| 462 | 462 | ||
| 463 | @cindex function cell in autoload | 463 | @cindex function cell in autoload |
| 464 | if @var{function} already has non-void function definition that is not | 464 | If @var{function} already has a non-void function definition that is not |
| 465 | an autoload object, this function does nothing and returns @code{nil}. | 465 | an autoload object, this function does nothing and returns @code{nil}. |
| 466 | Otherwise, it constructs an autoload object (@pxref{Autoload Type}), | 466 | Otherwise, it constructs an autoload object (@pxref{Autoload Type}), |
| 467 | and stores it as the function definition for @var{function}. The | 467 | and stores it as the function definition for @var{function}. The |
| @@ -990,19 +990,18 @@ file that was just loaded. | |||
| 990 | @end defvar | 990 | @end defvar |
| 991 | 991 | ||
| 992 | If you want code to be executed when a @emph{particular} library is | 992 | If you want code to be executed when a @emph{particular} library is |
| 993 | loaded, use the function @code{eval-after-load}: | 993 | loaded, use the macro @code{with-eval-after-load}: |
| 994 | 994 | ||
| 995 | @defun eval-after-load library form | 995 | @defmac with-eval-after-load library body@dots{} |
| 996 | This function arranges to evaluate @var{form} at the end of loading | 996 | This macro arranges to evaluate @var{body} at the end of loading |
| 997 | the file @var{library}, each time @var{library} is loaded. If | 997 | the file @var{library}, each time @var{library} is loaded. If |
| 998 | @var{library} is already loaded, it evaluates @var{form} right away. | 998 | @var{library} is already loaded, it evaluates @var{body} right away. |
| 999 | Don't forget to quote @var{form}! | ||
| 1000 | 999 | ||
| 1001 | You don't need to give a directory or extension in the file name | 1000 | You don't need to give a directory or extension in the file name |
| 1002 | @var{library}. Normally, you just give a bare file name, like this: | 1001 | @var{library}. Normally, you just give a bare file name, like this: |
| 1003 | 1002 | ||
| 1004 | @example | 1003 | @example |
| 1005 | (eval-after-load "edebug" '(def-edebug-spec c-point t)) | 1004 | (with-eval-after-load "edebug" (def-edebug-spec c-point t)) |
| 1006 | @end example | 1005 | @end example |
| 1007 | 1006 | ||
| 1008 | To restrict which files can trigger the evaluation, include a | 1007 | To restrict which files can trigger the evaluation, include a |
| @@ -1014,16 +1013,16 @@ example, @file{my_inst.elc} or @file{my_inst.elc.gz} in some directory | |||
| 1014 | @file{my_inst.el}: | 1013 | @file{my_inst.el}: |
| 1015 | 1014 | ||
| 1016 | @example | 1015 | @example |
| 1017 | (eval-after-load "foo/bar/my_inst.elc" @dots{}) | 1016 | (with-eval-after-load "foo/bar/my_inst.elc" @dots{}) |
| 1018 | @end example | 1017 | @end example |
| 1019 | 1018 | ||
| 1020 | @var{library} can also be a feature (i.e., a symbol), in which case | 1019 | @var{library} can also be a feature (i.e., a symbol), in which case |
| 1021 | @var{form} is evaluated at the end of any file where | 1020 | @var{body} is evaluated at the end of any file where |
| 1022 | @code{(provide @var{library})} is called. | 1021 | @code{(provide @var{library})} is called. |
| 1023 | 1022 | ||
| 1024 | An error in @var{form} does not undo the load, but does prevent | 1023 | An error in @var{body} does not undo the load, but does prevent |
| 1025 | execution of the rest of @var{form}. | 1024 | execution of the rest of @var{body}. |
| 1026 | @end defun | 1025 | @end defmac |
| 1027 | 1026 | ||
| 1028 | Normally, well-designed Lisp programs should not use | 1027 | Normally, well-designed Lisp programs should not use |
| 1029 | @code{eval-after-load}. If you need to examine and set the variables | 1028 | @code{eval-after-load}. If you need to examine and set the variables |
| @@ -1031,18 +1030,3 @@ defined in another library (those meant for outside use), you can do | |||
| 1031 | it immediately---there is no need to wait until the library is loaded. | 1030 | it immediately---there is no need to wait until the library is loaded. |
| 1032 | If you need to call functions defined by that library, you should load | 1031 | If you need to call functions defined by that library, you should load |
| 1033 | the library, preferably with @code{require} (@pxref{Named Features}). | 1032 | the library, preferably with @code{require} (@pxref{Named Features}). |
| 1034 | |||
| 1035 | @defvar after-load-alist | ||
| 1036 | This variable stores an alist built by @code{eval-after-load}, | ||
| 1037 | containing the expressions to evaluate when certain libraries are | ||
| 1038 | loaded. Each element looks like this: | ||
| 1039 | |||
| 1040 | @example | ||
| 1041 | (@var{regexp-or-feature} @var{forms}@dots{}) | ||
| 1042 | @end example | ||
| 1043 | |||
| 1044 | The key @var{regexp-or-feature} is either a regular expression or a | ||
| 1045 | symbol, and the value is a list of forms. The forms are evaluated | ||
| 1046 | when the key matches the absolute true name or feature name of the | ||
| 1047 | library being loaded. | ||
| 1048 | @end defvar | ||
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi index 7d42d2591d6..59729380ea7 100644 --- a/doc/lispref/modes.texi +++ b/doc/lispref/modes.texi | |||
| @@ -1800,7 +1800,7 @@ display of the text just as they would text in the buffer. Any | |||
| 1800 | characters which have no @code{face} properties are displayed, by | 1800 | characters which have no @code{face} properties are displayed, by |
| 1801 | default, in the face @code{mode-line} or @code{mode-line-inactive} | 1801 | default, in the face @code{mode-line} or @code{mode-line-inactive} |
| 1802 | (@pxref{Standard Faces,,, emacs, The GNU Emacs Manual}). The | 1802 | (@pxref{Standard Faces,,, emacs, The GNU Emacs Manual}). The |
| 1803 | @code{help-echo} and @code{local-map} properties in @var{string} have | 1803 | @code{help-echo} and @code{keymap} properties in @var{string} have |
| 1804 | special meanings. @xref{Properties in Mode}. | 1804 | special meanings. @xref{Properties in Mode}. |
| 1805 | 1805 | ||
| 1806 | @item @var{symbol} | 1806 | @item @var{symbol} |
| @@ -2205,7 +2205,7 @@ The value of @code{global-mode-string}. | |||
| 2205 | Certain text properties are meaningful in the | 2205 | Certain text properties are meaningful in the |
| 2206 | mode line. The @code{face} property affects the appearance of text; the | 2206 | mode line. The @code{face} property affects the appearance of text; the |
| 2207 | @code{help-echo} property associates help strings with the text, and | 2207 | @code{help-echo} property associates help strings with the text, and |
| 2208 | @code{local-map} can make the text mouse-sensitive. | 2208 | @code{keymap} can make the text mouse-sensitive. |
| 2209 | 2209 | ||
| 2210 | There are four ways to specify text properties for text in the mode | 2210 | There are four ways to specify text properties for text in the mode |
| 2211 | line: | 2211 | line: |
| @@ -2229,7 +2229,7 @@ structure, and make @var{form} evaluate to a string that has a text | |||
| 2229 | property. | 2229 | property. |
| 2230 | @end enumerate | 2230 | @end enumerate |
| 2231 | 2231 | ||
| 2232 | You can use the @code{local-map} property to specify a keymap. This | 2232 | You can use the @code{keymap} property to specify a keymap. This |
| 2233 | keymap only takes real effect for mouse clicks; binding character keys | 2233 | keymap only takes real effect for mouse clicks; binding character keys |
| 2234 | and function keys to it has no effect, since it is impossible to move | 2234 | and function keys to it has no effect, since it is impossible to move |
| 2235 | point into the mode line. | 2235 | point into the mode line. |
diff --git a/doc/lispref/nonascii.texi b/doc/lispref/nonascii.texi index e462c3b4ce4..b8b62325bb4 100644 --- a/doc/lispref/nonascii.texi +++ b/doc/lispref/nonascii.texi | |||
| @@ -124,7 +124,8 @@ belong to the same character. | |||
| 124 | 124 | ||
| 125 | @defun multibyte-string-p string | 125 | @defun multibyte-string-p string |
| 126 | Return @code{t} if @var{string} is a multibyte string, @code{nil} | 126 | Return @code{t} if @var{string} is a multibyte string, @code{nil} |
| 127 | otherwise. | 127 | otherwise. This function also returns @code{nil} if @var{string} is |
| 128 | some object other than a string. | ||
| 128 | @end defun | 129 | @end defun |
| 129 | 130 | ||
| 130 | @defun string-bytes string | 131 | @defun string-bytes string |
diff --git a/doc/lispref/numbers.texi b/doc/lispref/numbers.texi index eeebac6bf72..2b6f31b670b 100644 --- a/doc/lispref/numbers.texi +++ b/doc/lispref/numbers.texi | |||
| @@ -1156,11 +1156,6 @@ This function returns the logarithm of @var{arg}, with base | |||
| 1156 | returns a NaN. | 1156 | returns a NaN. |
| 1157 | @end defun | 1157 | @end defun |
| 1158 | 1158 | ||
| 1159 | @defun log10 arg | ||
| 1160 | This function returns the logarithm of @var{arg}, with base 10: | ||
| 1161 | @code{(log10 @var{x})} @equiv{} @code{(log @var{x} 10)}. | ||
| 1162 | @end defun | ||
| 1163 | |||
| 1164 | @defun expt x y | 1159 | @defun expt x y |
| 1165 | This function returns @var{x} raised to power @var{y}. If both | 1160 | This function returns @var{x} raised to power @var{y}. If both |
| 1166 | arguments are integers and @var{y} is positive, the result is an | 1161 | arguments are integers and @var{y} is positive, the result is an |
diff --git a/doc/lispref/package.texi b/doc/lispref/package.texi index ad9f4fc1aea..f4d6b590c77 100644 --- a/doc/lispref/package.texi +++ b/doc/lispref/package.texi | |||
| @@ -265,7 +265,7 @@ variable @code{load-file-name} (@pxref{Loading}). Here is an example: | |||
| 265 | Via the Package Menu, users may download packages from @dfn{package | 265 | Via the Package Menu, users may download packages from @dfn{package |
| 266 | archives}. Such archives are specified by the variable | 266 | archives}. Such archives are specified by the variable |
| 267 | @code{package-archives}, whose default value contains a single entry: | 267 | @code{package-archives}, whose default value contains a single entry: |
| 268 | the archive hosted by the GNU project at @url{elpa.gnu.org}. This | 268 | the archive hosted by the GNU project at @url{http://elpa.gnu.org}. This |
| 269 | section describes how to set up and maintain a package archive. | 269 | section describes how to set up and maintain a package archive. |
| 270 | 270 | ||
| 271 | @cindex base location, package archive | 271 | @cindex base location, package archive |
diff --git a/doc/lispref/syntax.texi b/doc/lispref/syntax.texi index dfa121103bc..6bbd7a3a7b7 100644 --- a/doc/lispref/syntax.texi +++ b/doc/lispref/syntax.texi | |||
| @@ -506,6 +506,11 @@ This function returns the current syntax table, which is the table for | |||
| 506 | the current buffer. | 506 | the current buffer. |
| 507 | @end defun | 507 | @end defun |
| 508 | 508 | ||
| 509 | @deffn Command describe-syntax &optional buffer | ||
| 510 | This command displays the contents of the syntax table of | ||
| 511 | @var{buffer} (by default, the current buffer) in a help buffer. | ||
| 512 | @end deffn | ||
| 513 | |||
| 509 | @defmac with-syntax-table table body@dots{} | 514 | @defmac with-syntax-table table body@dots{} |
| 510 | This macro executes @var{body} using @var{table} as the current syntax | 515 | This macro executes @var{body} using @var{table} as the current syntax |
| 511 | table. It returns the value of the last form in @var{body}, after | 516 | table. It returns the value of the last form in @var{body}, after |
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi index 6d5a39d887a..c10458b39ae 100644 --- a/doc/lispref/text.texi +++ b/doc/lispref/text.texi | |||
| @@ -1226,7 +1226,7 @@ list, which is in the variable @code{buffer-undo-list}. | |||
| 1226 | 1226 | ||
| 1227 | @defvar buffer-undo-list | 1227 | @defvar buffer-undo-list |
| 1228 | This buffer-local variable's value is the undo list of the current | 1228 | This buffer-local variable's value is the undo list of the current |
| 1229 | buffer. A value of @code{t} disables the recording of undo information. | 1229 | buffer. A value of @code{t} disables the recording of undo information. |
| 1230 | @end defvar | 1230 | @end defvar |
| 1231 | 1231 | ||
| 1232 | Here are the kinds of elements an undo list can have: | 1232 | Here are the kinds of elements an undo list can have: |
| @@ -2805,6 +2805,28 @@ from the specified range of text. Here's an example: | |||
| 2805 | Do not rely on the return value of this function. | 2805 | Do not rely on the return value of this function. |
| 2806 | @end defun | 2806 | @end defun |
| 2807 | 2807 | ||
| 2808 | @defun add-face-text-property start end face &optional appendp object | ||
| 2809 | @code{face} text attributes can be combined. If you want to make a | ||
| 2810 | section both italic and green, you can either define a new face that | ||
| 2811 | have those attributes, or you can add both these attributes separately | ||
| 2812 | to text: | ||
| 2813 | |||
| 2814 | @example | ||
| 2815 | (add-face-text-property @var{start} @var{end} 'italic) | ||
| 2816 | (add-face-text-property @var{start} @var{end} '(:foreground "#00ff00")) | ||
| 2817 | @end example | ||
| 2818 | |||
| 2819 | The attribute is (by default) prepended to the list of face | ||
| 2820 | attributes, and the first attribute of the same type takes | ||
| 2821 | precedence. So if you have two @code{:foreground} specifications, the | ||
| 2822 | first one will take effect. | ||
| 2823 | |||
| 2824 | If you pass in @var{appendp}, the attribute will be appended instead | ||
| 2825 | of prepended, which means that it will have no effect if there is | ||
| 2826 | already an attribute of the same type. | ||
| 2827 | |||
| 2828 | @end defun | ||
| 2829 | |||
| 2808 | The easiest way to make a string with text properties | 2830 | The easiest way to make a string with text properties |
| 2809 | is with @code{propertize}: | 2831 | is with @code{propertize}: |
| 2810 | 2832 | ||
diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi index c40ae408f7f..2e3760e573e 100644 --- a/doc/lispref/tips.texi +++ b/doc/lispref/tips.texi | |||
| @@ -54,12 +54,12 @@ You should choose a short word to distinguish your program from other | |||
| 54 | Lisp programs. The names of all global symbols in your program, that | 54 | Lisp programs. The names of all global symbols in your program, that |
| 55 | is the names of variables, constants, and functions, should begin with | 55 | is the names of variables, constants, and functions, should begin with |
| 56 | that chosen prefix. Separate the prefix from the rest of the name | 56 | that chosen prefix. Separate the prefix from the rest of the name |
| 57 | with a hyphen, @samp{-}. Use two hyphens if the symbol is not meant | 57 | with a hyphen, @samp{-}. This practice helps avoid name conflicts, |
| 58 | to be used by other packages. This practice helps avoid name | 58 | since all global variables in Emacs Lisp share the same name space, |
| 59 | conflicts, since all global variables in Emacs Lisp share the same | 59 | and all functions share another name space@footnote{The benefits of a |
| 60 | name space, and all functions share another name space@footnote{The | 60 | Common Lisp-style package system are considered not to outweigh the |
| 61 | benefits of a Common Lisp-style package system are considered not to | 61 | costs.}. Use two hyphens to separate prefix and name if the symbol is |
| 62 | outweigh the costs.}. | 62 | not meant to be used by other packages. |
| 63 | 63 | ||
| 64 | Occasionally, for a command name intended for users to use, it is more | 64 | Occasionally, for a command name intended for users to use, it is more |
| 65 | convenient if some words come before the package's name prefix. And | 65 | convenient if some words come before the package's name prefix. And |
diff --git a/doc/lispref/variables.texi b/doc/lispref/variables.texi index 4bcf7985f0c..4a38fa9ccd5 100644 --- a/doc/lispref/variables.texi +++ b/doc/lispref/variables.texi | |||
| @@ -988,7 +988,7 @@ Here is an example: | |||
| 988 | (setq my-ticker (lambda () | 988 | (setq my-ticker (lambda () |
| 989 | (setq x (1+ x))))) | 989 | (setq x (1+ x))))) |
| 990 | @result{} (closure ((x . 0) t) () | 990 | @result{} (closure ((x . 0) t) () |
| 991 | (1+ x)) | 991 | (setq x (1+ x))) |
| 992 | 992 | ||
| 993 | (funcall my-ticker) | 993 | (funcall my-ticker) |
| 994 | @result{} 1 | 994 | @result{} 1 |