summaryrefslogtreecommitdiff
path: root/doc/lispref
diff options
context:
space:
mode:
authorJoakim Verona <joakim@verona.se>2015-02-08 21:55:28 +0100
committerJoakim Verona <joakim@verona.se>2015-02-08 21:55:28 +0100
commit5e1d5ef39ca0d2fbff26d659f2ec6ce863b14529 (patch)
tree860e0d53399626aee6249ebb5f972879f403b228 /doc/lispref
parent148262ce3db990ed16989341345e232570b3a338 (diff)
parent7d631aa0ffab875e4979727f632703ad5b4100a2 (diff)
downloademacs-xwidget.tar.gz
merge masterxwidget
Diffstat (limited to 'doc/lispref')
-rw-r--r--doc/lispref/ChangeLog10
-rw-r--r--doc/lispref/display.texi9
-rw-r--r--doc/lispref/sequences.texi47
3 files changed, 57 insertions, 9 deletions
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index aa4d3200830..3fe3d6fd6a0 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,13 @@
+2015-02-06 Nicolas Petton <nicolas@petton.fr>
+
+ * sequences.texi (Sequence Functions): Add documentation for
+ seq-mapcat, seq-partition and seq-group-by.
+
+2015-02-05 Martin Rudalics <rudalics@gmx.at>
+
+ * display.texi (Size of Displayed Text): Remove description of
+ optional argument BUFFER of `window-text-pixel-size'.
+
2015-02-01 Martin Rudalics <rudalics@gmx.at>
* display.texi (Size of Displayed Text): Describe optional
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi
index 10b17a3f389..b09b82a6724 100644
--- a/doc/lispref/display.texi
+++ b/doc/lispref/display.texi
@@ -1880,7 +1880,7 @@ displayed in a given window. This function is used by
@code{fit-frame-to-buffer} (@pxref{Size and Position}) to make a window
exactly as large as the text it contains.
-@defun window-text-pixel-size &optional window from to x-limit y-limit mode-and-header-line buffer
+@defun window-text-pixel-size &optional window from to x-limit y-limit mode-and-header-line
This function returns the size of the text of @var{window}'s buffer in
pixels. @var{window} must be a live window and defaults to the selected
one. The return value is a cons of the maximum pixel-width of any text
@@ -1919,13 +1919,6 @@ means to not include the height of the mode- or header-line of
@code{mode-line} or @code{header-line}, include only the height of that
line, if present, in the return value. If it is @code{t}, include the
height of both, if present, in the return value.
-
-The optional argument @var{buffer} allows to specify an alternate buffer
-whose text size will be calculated. If @var{buffer} is @code{nil} or
-omitted, then operate on the buffer of @var{window}. If it is @code{t},
-then operate on the current buffer as if it were displayed in
-@var{window}. If it specifies a live buffer, then operate on that
-buffer as if it were displayed in @var{window}.
@end defun
diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi
index f82c4962759..f268c0d11e2 100644
--- a/doc/lispref/sequences.texi
+++ b/doc/lispref/sequences.texi
@@ -695,9 +695,54 @@ concatenation of @var{sequences}. @var{type} may be: @code{vector},
@end example
@end defun
+@defun seq-mapcat function sequence &optional type
+ This function returns the result of applying @code{seq-concatenate}
+to the result of applying @var{function} to each element of
+@var{sequence}. The result is a sequence of type @var{type}, or a
+list if @var{type} is @code{nil}.
+
+@example
+@group
+(seq-mapcat #'seq-reverse '((3 2 1) (6 5 4)))
+@result{} (1 2 3 4 5 6)
+@end group
+@end example
+@end defun
+
+@defun seq-partition sequence n
+ This function returns a list of the elements of @var{sequence}
+grouped into sub-sequences of length @var{n}. The last sequence may
+contain less elements than @var{n}. @var{n} must be an integer. If
+@var{n} is a negative integer or 0, nil is returned.
+
+@example
+@group
+(seq-partition '(0 1 2 3 4 5 6 7) 3)
+@result{} ((0 1 2) (3 4 5) (6 7))
+@end group
+@end example
+@end defun
+
+@defun seq-group-by function sequence
+ This function separates the elements of @var{sequence} into an alist
+whose keys are the result of applying @var{function} to each element
+of @var{sequence}. Keys are compared using @code{equal}.
+
+@example
+@group
+(seq-group-by #'integerp '(1 2.1 3 2 3.2))
+@result{} ((t 2 3 1) (nil 3.2 2.1))
+@end group
+@group
+(seq-group-by #'car '((a 1) (b 2) (a 3) (c 4)))
+@result{} ((a (a 3) (a 1)) (b (b 2)) (c (c 4)))
+@end group
+@end example
+@end defun
+
@defmac seq-doseq (var sequence [result]) body@dots{}
@cindex sequence iteration
-This macro is like @code{dolist}, except that @var{sequence} can be a list,
+ This macro is like @code{dolist}, except that @var{sequence} can be a list,
vector or string (@pxref{Iteration} for more information about the
@code{dolist} macro). This is primarily useful for side-effects.
@end defmac