aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2008-10-15 14:44:02 +0000
committerEli Zaretskii2008-10-15 14:44:02 +0000
commit8e8c1a72149bf3d10d995979f4e76c3d38352820 (patch)
tree7e4a4c6c67ecf068778fa9d4990744336a71d4e3
parenta33a1f2ac9d4df1d0366784c9e981bc6444bd097 (diff)
downloademacs-8e8c1a72149bf3d10d995979f4e76c3d38352820.tar.gz
emacs-8e8c1a72149bf3d10d995979f4e76c3d38352820.zip
(Low-Level Kill Ring): interprogram-paste-function can now return a list
of strings.
-rw-r--r--doc/lispref/ChangeLog3
-rw-r--r--doc/lispref/text.texi29
-rw-r--r--etc/NEWS1
3 files changed, 24 insertions, 9 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index 4217dc72c4f..a0ffb90ffba 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,5 +1,8 @@
12008-10-15 Eli Zaretskii <eliz@gnu.org> 12008-10-15 Eli Zaretskii <eliz@gnu.org>
2 2
3 * text.texi (Low-Level Kill Ring): interprogram-paste-function can
4 now return a list of strings.
5
3 * control.texi (Handling Errors): Document ignore-errors. 6 * control.texi (Handling Errors): Document ignore-errors.
4 7
5 * frames.texi (Creating Frames): Document frame-inherited-parameters. 8 * frames.texi (Creating Frames): Document frame-inherited-parameters.
diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi
index ac2fb090722..2b3cb6a26c0 100644
--- a/doc/lispref/text.texi
+++ b/doc/lispref/text.texi
@@ -1054,12 +1054,13 @@ If @var{n} is zero, indicating a request for the latest kill,
1054@code{current-kill} calls the value of 1054@code{current-kill} calls the value of
1055@code{interprogram-paste-function} (documented below) before 1055@code{interprogram-paste-function} (documented below) before
1056consulting the kill ring. If that value is a function and calling it 1056consulting the kill ring. If that value is a function and calling it
1057returns a string, @code{current-kill} pushes that string onto the kill 1057returns a string or a list of several string, @code{current-kill}
1058ring and returns it. It also sets the yanking pointer to point to 1058pushes the strings onto the kill ring and returns the first string.
1059that new entry, regardless of the value of @var{do-not-move}. 1059It also sets the yanking pointer to point to that new entry,
1060Otherwise, @code{current-kill} does not treat a zero value for @var{n} 1060regardless of the value of @var{do-not-move}. Otherwise,
1061specially: it returns the entry pointed at by the yanking pointer and 1061@code{current-kill} does not treat a zero value for @var{n} specially:
1062does not move the yanking pointer. 1062it returns the entry pointed at by the yanking pointer and does not
1063move the yanking pointer.
1063@end defun 1064@end defun
1064 1065
1065@defun kill-new string &optional replace yank-handler 1066@defun kill-new string &optional replace yank-handler
@@ -1102,9 +1103,19 @@ If the value is a function, @code{current-kill} calls it to get the
1102then that value is used as the ``most recent kill.'' If it returns 1103then that value is used as the ``most recent kill.'' If it returns
1103@code{nil}, then the front of the kill ring is used. 1104@code{nil}, then the front of the kill ring is used.
1104 1105
1105The normal use of this hook is to get the window system's primary 1106To facilitate support for window systems that support multiple
1107selections, this function may also return a list of strings. In that
1108case, the first string is used as the ``most recent kill'', and all
1109the other strings are pushed onto the kill ring, for easy access by
1110@code{yank-pop}.
1111
1112The normal use of this function is to get the window system's primary
1106selection as the most recent kill, even if the selection belongs to 1113selection as the most recent kill, even if the selection belongs to
1107another application. @xref{Window System Selections}. 1114another application. @xref{Window System Selections}. However, if
1115the selection was provided by the current Emacs session, this function
1116should return @code{nil}. (If it is hard to tell whether Emacs or
1117some other program provided the selection, it should be good enough to
1118use @code{string=} to compare it with the last text Emacs provided.)
1108@end defvar 1119@end defvar
1109 1120
1110@defvar interprogram-cut-function 1121@defvar interprogram-cut-function
@@ -1118,7 +1129,7 @@ The second, optional, argument has the same meaning as the @var{push}
1118argument to @code{x-set-cut-buffer} (@pxref{Definition of 1129argument to @code{x-set-cut-buffer} (@pxref{Definition of
1119x-set-cut-buffer}) and only affects the second and later cut buffers. 1130x-set-cut-buffer}) and only affects the second and later cut buffers.
1120 1131
1121The normal use of this hook is to set the window system's primary 1132The normal use of this function is to set the window system's primary
1122selection (and first cut buffer) from the newly killed text. 1133selection (and first cut buffer) from the newly killed text.
1123@xref{Window System Selections}. 1134@xref{Window System Selections}.
1124@end defvar 1135@end defvar
diff --git a/etc/NEWS b/etc/NEWS
index 5f6b67abdcc..151f9a096c7 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1131,6 +1131,7 @@ this map rather than to function-key-map now.
1131+++ 1131+++
1132** `ignore-errors' is now a standard macro (does not require the CL package). 1132** `ignore-errors' is now a standard macro (does not require the CL package).
1133 1133
1134+++
1134** `interprogram-paste-function' can now return one string or a list 1135** `interprogram-paste-function' can now return one string or a list
1135of strings. In the latter case, Emacs puts the second and following 1136of strings. In the latter case, Emacs puts the second and following
1136strings on the kill ring. 1137strings on the kill ring.