summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2021-03-18 05:59:12 +0100
committerEli Zaretskii <eliz@gnu.org>2021-03-18 11:03:14 +0200
commit7ae4588bb4800694d841da1684538191cb291617 (patch)
tree40b7694e2cc5560cf247dce9b8ad331778d6438b
parenta7f95d5244dcb1fea067858c3ddc2bb2a22ba37a (diff)
downloademacs-7ae4588bb4800694d841da1684538191cb291617.tar.gz
Document that `buffer-string' retains text properties
* doc/lispref/text.texi (Buffer Contents): Mention text properties in the `buffer-string' documentation. * src/editfns.c (Fbuffer_string): Mention text properties in the doc string (bug#47220). (cherry picked from commit 60af754170f22f5d25510af069ed0ebfec95f992)
-rw-r--r--doc/lispref/text.texi4
-rw-r--r--src/editfns.c6
2 files changed, 8 insertions, 2 deletions
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index 89582acd35a..6eda581777e 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -222,7 +222,9 @@ properties, just the characters themselves. @xref{Text Properties}.
@defun buffer-string
This function returns the contents of the entire accessible portion of
-the current buffer, as a string.
+the current buffer, as a string. If the text being copied has any
+text properties, these are copied into the string along with the
+characters they belong to.
@end defun
If you need to make sure the resulting string, when copied to a
diff --git a/src/editfns.c b/src/editfns.c
index 255537cdc6d..621e35171d8 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -1682,7 +1682,11 @@ they can be in either order. */)
DEFUN ("buffer-string", Fbuffer_string, Sbuffer_string, 0, 0, 0,
doc: /* Return the contents of the current buffer as a string.
If narrowing is in effect, this function returns only the visible part
-of the buffer. */)
+of the buffer.
+
+This function copies the text properties of that part of the buffer
+into the result string; if you don’t want the text properties,
+use `buffer-substring-no-properties' instead. */)
(void)
{
return make_buffer_string_both (BEGV, BEGV_BYTE, ZV, ZV_BYTE, 1);