1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-07 08:00:48 -08:00
emacs/doc/lispref
Paul Eggert 3db388b0bf Speed up (format "%s" STRING) and the like
Although the Lisp manual said that ‘format’ returns a
newly-allocated string, this was not true for a few cases like
(format "%s" ""), and fixing the documentation to allow reuse of
arguments lets us improve performance in common cases like
(format "foo") and (format "%s" "foo") (Bug#28625).
* doc/lispref/strings.texi (Formatting Strings):
* etc/NEWS:
Say that the result of ‘format’ might not be newly allocated.
* src/callint.c (Fcall_interactively):
* src/dbusbind.c (XD_OBJECT_TO_STRING):
* src/editfns.c (Fmessage, Fmessage_box):
* src/xdisp.c (vadd_to_log, Ftrace_to_stderr):
Just use Fformat or Fformat_message, as that’s simpler and no
longer makes unnecessary copies.
* src/editfns.c (styled_format): Remove last argument, as it
is no longer needed: all callers now want it to behave as if it
were true.  All remaining callers changed.  Make this function
static again.  Simplify the function now that we no longer
need to worry about whether the optimization is allowed.
2017-10-04 14:45:08 -07:00
..
abbrevs.texi
anti.texi
back.texi
backups.texi
book-spine.texi
buffers.texi Accept new always' value for option buffer-offer-save' 2017-09-24 14:57:40 -07:00
ChangeLog.1 Prefer HTTPS to HTTP for gnu.org 2017-10-01 19:59:01 -07:00
commands.texi
compile.texi
control.texi Amend documentation for text-quoting-style becoming a user option. 2017-10-01 11:27:16 +00:00
customize.texi
debugging.texi
display.texi Amend documentation for text-quoting-style becoming a user option. 2017-10-01 11:27:16 +00:00
doclicense.texi Merge from Gnulib 2017-10-01 18:31:10 -07:00
edebug.texi Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
elisp.texi Amend documentation for text-quoting-style becoming a user option. 2017-10-01 11:27:16 +00:00
errors.texi
eval.texi Update documentation of 'max-lisp-eval-depth' 2017-09-11 19:48:56 +03:00
files.texi Accept new always' value for option buffer-offer-save' 2017-09-24 14:57:40 -07:00
frames.texi Improve handling of iconification of child frames (Bug#28611) 2017-10-01 10:17:17 +02:00
functions.texi
gpl.texi Merge from Gnulib 2017-10-01 18:31:10 -07:00
hash.texi
help.texi Amend documentation for text-quoting-style becoming a user option. 2017-10-01 11:27:16 +00:00
hooks.texi
index.texi
internals.texi
intro.texi
keymaps.texi
lay-flat.texi
lists.texi
loading.texi
macros.texi
Makefile.in Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
maps.texi
markers.texi
minibuf.texi Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
modes.texi
nonascii.texi Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
numbers.texi
objects.texi
os.texi Rename timer-list to list-timers 2017-09-19 22:24:23 -04:00
package.texi Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
positions.texi
processes.texi Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
README Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
records.texi
searching.texi Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
sequences.texi Improve documentation of 'copy-sequence' 2017-09-30 16:01:00 +03:00
spellfile
streams.texi
strings.texi Speed up (format "%s" STRING) and the like 2017-10-04 14:45:08 -07:00
symbols.texi Remove "baroque" use of prefix argument from gensym 2017-09-13 10:38:05 -04:00
syntax.texi Doc amendment for syntax-ppss. 2017-10-01 16:08:20 +00:00
text.texi Document 'replace-buffer-contents' in the manual. 2017-09-24 19:32:16 +02:00
threads.texi
tips.texi Document the 'list-FOO' convention 2017-09-22 12:41:00 +03:00
two-volume-cross-refs.txt Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
two-volume.make Prefer HTTPS to FTP and HTTP in documentation 2017-09-13 15:54:37 -07:00
variables.texi
windows.texi

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Copyright (C) 2001-2017 Free Software Foundation, Inc.  -*- outline -*-
See the end of the file for license conditions.


README for the Emacs Lisp Reference Manual.

* This directory contains the texinfo source files for the Emacs Lisp
Reference Manual.

* Report bugs in the Lisp Manual (or in Emacs) using M-x report-emacs-bug.
To ask questions, use the help-gnu-emacs mailing list.

* The Emacs Lisp Reference Manual is quite large.  It totals around
1100 pages in smallbook format; the info files total around 3.0 megabytes.

* You can format this manual for Info, for printing hardcopy using TeX,
or for HTML.

* You can buy nicely printed copies from the Free Software Foundation.
Buying a manual from the Free Software Foundation helps support our GNU
development work.  See <https://shop.fsf.org/>.
(At time of writing, this manual is out of print.)

* 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.

* This distribution contains a Makefile that you can use with GNU Make.

** To make an Info file, you need to install Texinfo, then run 'make info'.

** Use 'make elisp.pdf' or 'make elisp.html' to create PDF or HTML versions.


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 of the License, 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.  If not, see <https://www.gnu.org/licenses/>.