* The FACTOR command can now analyse matrix files prepared with MATRIX DATA.
+ * The FACTOR command can now print the anti-image matrices.
+
* The MATRIX DATA command has been added.
* Some inappropriate properties in selection dialogs have been corrected.
** The Non Parametric Statistics Menu has a new item: "K Independent Samples".
+ ** Dialog boxes can now be canceled using the <Escape> key.
+
* The AUTORECODE command now accepts an optional / before INTO.
* The short form of the VECTOR command can now create string variables.
+ * Bug fixes, including fixes for CVE-2017-10791 and CVE-2017-10792.
+
Changes from 0.10.1 to 0.10.2:
* CROSSTABS implements a new COUNT subcommand to round case or cell
Gnulib does not maintain a stable API or ABI, so it is possible that
PSPP will not work with older or newer versions of Gnulib.
- commit baef0a4b9433d00e59c586b9eaad67d8461d7324
- Author: Karl Berry <karl@freefriends.org>
- Date: Tue Jun 14 09:05:27 2016 -0700
+ commit 418a494eaac2dbec290de5991059bc9b33dc7df1
+ Author: John E. Malmberg <wb8tyw@gmail.com>
+ Date: Sat Jul 15 23:11:44 2017 +0200
- autoupdate
+ sys_socket: Add support for OpenVMS.
+
+ * lib/sys_socket.in.h [__VMS]: Define CMSG_SPACE, CMSG_LEN.
+ * doc/posix-headers/sys_socket.texi: Mention OpenVMS issues.
To clone Gnulib into a directory named "gnulib" using Git, and then
check out this particular commit, run these commands:
# -*- makefile -*-
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+
all: everything
# Adjust these to reflect where you've installed gnulib.
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
EXTRA_DIST += build-aux/svg2png build-aux/icon-list
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
dnl Process this file with autoconf to produce a configure script.
dnl Initialize.
AC_PREREQ(2.63)
-AC_INIT([GNU PSPP], [0.10.5pre1], [bug-gnu-pspp@gnu.org], [pspp])
+AC_INIT([GNU PSPP], [0.10.4], [bug-gnu-pspp@gnu.org], [pspp])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_TESTDIR([tests])
doc/dev/encrypted-file-wrappers.texi \
doc/dev/q2c.texi
-if HAVE_DOT
-$(PDFS): doc/dev/spv-structure.pdf
-$(srcdir)/doc/dev/spv-structure.pdf: doc/dev/spv-structure.gv
- dot -Tpdf < $< > $@
-
-$(DVIS): doc/dev/spv-structure.eps
-$(srcdir)/doc/dev/spv-structure.eps: doc/dev/spv-structure.gv
- dot -Teps < $< > $@
-endif
-EXTRA_DIST += \
- doc/dev/spv-structure.gv \
- doc/dev/spv-structure.pdf \
- doc/dev/spv-structure.eps
-
dist_man_MANS += doc/pspp.1 \
doc/psppire.1
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Bugs
@chapter Bugs
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Combining Data Files
@chapter Combining Data Files
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Command Index
@chapter Command Index
@printindex vr
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Concept Index
@chapter Concept Index
@printindex cp
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@c (modify-syntax-entry ?_ "w")
@c (modify-syntax-entry ?' "'")
@c (modify-syntax-entry ?@ "'")
@display
MATRIX DATA
VARIABLES = @var{columns}
- [eFILE='@var{file_name}'| INLINE @}
+ [FILE='@var{file_name}'| INLINE @}
[/FORMAT= [@{LIST | FREE@}]
[@{UPPER | LOWER | FULL@}]
[@{DIAGONAL | NODIAGONAL@}]]
+ [/N= @var{n}]
[/SPLIT= @var{split_variables}].
@end display
then the data may be data for several matrix rows may be specified on
the same line, or a single row may be split across lines.
+The @subcmd{N} subcommand may be used to specify the number
+of valid cases for each variable. It should not be used if the
+data contains a record whose ROWTYPE_ column is @samp{N} or @samp{N_VECTOR}.
+It implies a @samp{N} record whose values are all @var{n}.
+That is to say,
+@example
+matrix data
+ variables = rowtype_ var01 TO var04
+ /format = upper nodiagonal
+ /n = 99.
+begin data
+mean 34 35 36 37
+sd 22 11 55 66
+corr 9 8 7
+corr 6 5
+corr 4
+end data.
+@end example
+produces an effect identical to
+@example
+matrix data
+ variables = rowtype_ var01 TO var04
+ /format = upper nodiagonal
+begin data
+n 99 99 99 99
+mean 34 35 36 37
+sd 22 11 55 66
+corr 9 8 7
+corr 6 5
+corr 4
+end data.
+@end example
+
+
The @subcmd{SPLIT} is used to indicate that variables are to be
considered as split variables. For example, the following
defines two matrices using the variable @samp{S1} to distinguish
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Data Selection
@chapter Selecting data for analysis
@node SPSS Viewer File Format
-@chapter SPSS Viewer File Format
+@appendix SPSS Viewer File Format
SPSS Viewer or @file{.spv} files, here called SPV files, are written
by SPSS 16 and later to represent the contents of its output editor.
@node SPV Structure Member Format
@section Structure Member Format
+A structure member lays out the high-level structure for a group of
+output items such as heading, tables, and charts. Structure members
+do not include the details of tables and charts but instead refer to
+them by their member names.
+
Structure members' XML files claim conformance with a collection of
XML Schemas. These schemas are distributed, under a nonfree license,
with SPSS binaries. Fortunately, the schemas are not necessary to
-understand the structure members. To a degree, the schemas can even
+understand the structure members. The schemas can even
be deceptive because they document elements and attributes that are
not in the corpus and do not document elements and attributes that are
-commonly found there.
+commonly found in the corpus.
Structure members use a different XML namespace for each schema, but
these namespaces are not entirely consistent. In some SPV files, for
One may ignore all of the above in interpreting a structure member.
The actual XML has a simple and straightforward form that does not
-require a reader to take schemas or namespaces into account.
+require a reader to take schemas or namespaces into account. A
+structure member's root is @code{heading} element, which contains
+@code{heading} or @code{container} elements (or a mix), forming a
+tree. In turn, @code{container} holds a @code{label} and one more
+child, usually @code{text} or @code{table}.
+
+The following diagram shows the hierarchy within an SPV structure
+member more precisely. Names represent elements and <text> and
+<cdata> represent plain text and CDATA, respectively. Edges point
+from parent to child. Unlabeled edges indicate that the child appears
+exactly once; edges labeled with *, zero or more times; edges labeled
+with ?, zero or one times. Where possible, child elements are shown
+in the order they actually appear within a parent element.
+
+@example
+@group
+heading
+ +--?--> pageSetup
+ | +--> pageHeader +--> pageParagraph --> text --> <cdata>
+ | +--> pageFooter +--> pageParagraph --> text --> <cdata>
+ +-----> label --?--> <text>
+ +--*--> heading
+ +--*--> container
+ +-----> label --?--> <text>
+ +--?--> text ---> html --> <cdata>
+ +--?--> table
+ | +--?-- tableProperties
+ | | +--> generalProperties
+ | | +--> footnoteProperties
+ | | +--> cellFormatProperties
+ | | | +--> caption -------> style
+ | | | +--> footnotes -----> style
+ | | | +--> rowLabelse ----> style
+ | | | +--> columnLabels --> style
+ | | | +--> data ----------> style
+ | | | +--> layers --------> style
+ | | | +--> title ---------> style
+ | | | +--> cornerLabels --> style
+ | | +--> borderProperties
+ | | | +--> topInnerFrame
+ | | | +--> rightInnerFrame
+ | | | +--> horizontalDimensionBorderColumns
+ | | | +--> horizontalDimensionBorderRows
+ | | | +--> horizontalCategoryBorderColumns
+ | | | +--> leftInnerFrame
+ | | | +--> verticalDimensionBorderRows
+ | | | +--> titleLayerSeparator
+ | | | +--> verticalCategoryBorderRows
+ | | | +--> topOuterFrame
+ | | | +--> bottomInnerFrame
+ | | | +--> leftOuterFrame
+ | | | +--> dataAreaTop
+ | | | +--> verticalDimensionBorderColumns
+ | | | +--> dataAreaLeft
+ | | | +--> horizontalCategoryBorderRows
+ | | | +--> bottomOuterFrame
+ | | | +--> rightOuterFrame
+ | | | +--> verticalCategoryBorderColumns
+ | | +--> printingProperties
+ | +----- tableStructure
+ | +--?--> path ------> <text>
+ | +-----> dataPath --> <text>
+ +--?--> graph
+ | +--?--> dataPath --> <text>
+ | +-----> path ------> <text>
+ +--?--> model
+ +--?--> ViZml --> <text>
+ +--?--> path ---> <text>
+ +--?--> pmmlContainerPath ---> <text>
+ +--?--> statsContainerPath --> <text>
+@end group
+@end example
The elements found in structure members are documented below. For
each element, we note the possible parent elements and the element's
Zero or more @var{x}.
@end table
-@ifnottex
-For a diagram illustrating the hierarchy of elements within an SPV
-structure member, please refer to a PDF version of the manual.
-@end ifnottex
+The following example shows the contents of a typical structure member
+for a @cmd{DESCRIPTIVES} procedure. A real structure member is not
+indented. This example also omits most attributes, all XML namespace
+information, and the CSS from the embedded HTML:
-@iftex
-The following diagram shows the hierarchy of elements within an SPV
-structure member. Edges point from parent to child elements.
-Unlabeled edges indicate that the child appears exactly once; edges
-labeled with *, zero or more times; edges labeled with ?, zero or one
-times.
-@center @image{dev/spv-structure, 5in}
-@end iftex
+@example
+<?xml version="1.0" encoding="utf-8"?>
+<heading>
+ <label>Output</label>
+ <heading commandName="Descriptives">
+ <label>Descriptives</label>
+ <container>
+ <label>Title</label>
+ <text commandName="Descriptives" type="title">
+ <html lang="en">
+<![CDATA[<head><style type="text/css">...</style></head><BR>Descriptives]]>
+ </html>
+ </text>
+ </container>
+ <container visibility="hidden">
+ <label>Notes</label>
+ <table commandName="Descriptives" subType="Notes" type="note">
+ <tableStructure>
+ <dataPath>00000000001_lightNotesData.bin</dataPath>
+ </tableStructure>
+ </table>
+ </container>
+ <container>
+ <label>Descriptive Statistics</label>
+ <table commandName="Descriptives" subType="Descriptive Statistics"
+ type="table">
+ <tableStructure>
+ <dataPath>00000000002_lightTableData.bin</dataPath>
+ </tableStructure>
+ </table>
+ </container>
+ </heading>
+</heading>
+@end example
@menu
-* SPV heading Element::
-* SPV label Element::
-* SPV container Element::
-* SPV text Element (Inside @code{container})::
-* SPV html Element::
-* SPV table Element::
-* SPV tableStructure Element::
-* SPV dataPath Element::
-* SPV pageSetup Element::
-* SPV pageHeader and pageFooter Elements::
-* SPV pageParagraph Element::
-* SPV @code{text} Element (Inside @code{pageParagraph})::
+* SPV Structure heading Element::
+* SPV Structure label Element::
+* SPV Structure container Element::
+* SPV Structure text Element (Inside @code{container})::
+* SPV Structure html Element::
+* SPV Structure table Element::
+* SPV Structure tableStructure Element::
+* SPV Structure graph Element::
+* SPV Structure model Element::
+* SPV Structure dataPath and path Elements::
+* SPV Structure pageSetup Element::
+* SPV Structure pageHeader and pageFooter Elements::
+* SPV Structure pageParagraph Element::
+* SPV Structure @code{text} Element (Inside @code{pageParagraph})::
@end menu
-@node SPV heading Element
+@node SPV Structure heading Element
@subsection The @code{heading} Element
Parent: Document root or @code{heading} @*
-Contents: [@code{pageSetup}] @code{label} (@code{container} @math{|} @code{heading})*
+Contents: @code{pageSetup}? @code{label} (@code{container} @math{|} @code{heading})*
The root of a structure member is a @code{heading}, which represents a
section of output beginning with a title (the @code{label}) and
ordinarily followed by content containers or further nested
-(sub)-sections of output.
+(sub)-sections of output. Unlike heading elements in HTML and other
+common document formats, which precede the content that they head,
+@code{heading} contains the elements that appear below the heading.
The document root heading, only, may also contain a @code{pageSetup}
element.
@defvr {Optional} @code{creation-date-time}
The date and time at which the SPV file was written, in a
-locale-specific format, e.g. @code{Friday, May 16, 2014 6:47:37 PM
+locale-specific format, e.g.@: @code{Friday, May 16, 2014 6:47:37 PM
PDT} or @code{lunedì 17 marzo 2014 3.15.48 CET} or even @code{Friday,
December 5, 2014 5:00:19 o'clock PM EST}.
@end defvr
@code{de}, @code{pt-BR}.
@end defvr
-@node SPV label Element
+@node SPV Structure label Element
@subsection The @code{label} Element
Parent: @code{heading} or @code{container} @*
according to the output language, e.g.@: in Italian a frequency table
procedure is labeled ``Frequenze''.
-The corpus contains one example of an empty label, one that contains
+The corpus contains a few examples of empty labels, ones that contain
no text.
This element has no attributes.
-@node SPV container Element
+@node SPV Structure container Element
@subsection The @code{container} Element
Parent: @code{heading} @*
-Contents: @code{label} [@code{table} @math{|} @code{text}]
+Contents: @code{label} (@code{table} @math{|} @code{text} @math{|} @code{graph} @math{|} @code{model})
A @code{container} serves to label a @code{table} or a @code{text}
item.
@code{1097px}.
@end defvr
-@node SPV text Element (Inside @code{container})
+@node SPV Structure text Element (Inside @code{container})
@subsection The @code{text} Element (Inside @code{container})
Parent: @code{container} @*
As on the @code{heading} element.
@end defvr
-@node SPV html Element
+@node SPV Structure html Element
@subsection The @code{html} Element
Parent: @code{text} @*
Contents: CDATA
The CDATA contains an HTML document. In some cases, the document
-starts with @code{<html>} and ends with @code{</html}; in others the
+starts with @code{<html>} and ends with @code{</html>}; in others the
@code{html} element is implied. Generally the HTML includes a
@code{head} element with a CSS stylesheet. The HTML body often begins
with @code{<BR>}. The actual content ranges from trivial to simple:
This always contains @code{en} in the corpus.
@end defvr
-@node SPV table Element
+@node SPV Structure table Element
@subsection The @code{table} Element
Parent: @code{container} @*
for version 21 and up and always includes all 8 digits.
@end defvr
-@node SPV tableStructure Element
+@node SPV Structure tableStructure Element
@subsection The @code{tableStructure} Element
Parent: @code{table} @*
This element has no attributes.
-@node SPV dataPath Element
-@subsection The @code{dataPath} Element
+@node SPV Structure graph Element
+@subsection The @code{graph} Element
+
+Parent: @code{container} @*
+Contents: @code{dataPath}? @code{path}
+
+This element represents a graph. The @code{dataPath} and @code{path}
+elements name the Zip members that give the details of the graph.
+Normally, both elements are present; there is only one counterexample
+in the corpus.
+
+@node SPV Structure model Element
+@subsection The @code{model} Element
+
+Parent: @code{container} @*
+Contents: (@code{ViZml}? @code{path}) @math{|} (@code{pmmlContainerPath} @code{statsContainerPath})
+
+This element represents a model. The @code{dataPath} and @code{path}
+elements name the Zip members that give the details of the model.
+Normally, both elements are present; there is only one counterexample
+in the corpus.
+
+The details are unexplored. The @code{ViZml} element contains base-64
+encoded text, that decodes to a binary format with some embedded text
+strings, and @code{path} names an Zip member that contains XML.
+Alternatively, @code{pmmlContainerPath} and @code{statsContainerPath}
+name Zip members with @file{.scf} extension.
-Parent: @code{tableStructure} @*
+@node SPV Structure dataPath and path Elements
+@subsection The @code{dataPath} and @code{path} Elements
+
+Parent: @code{tableStructure} or @code{graph} or @code{model} @*
Contents: text
-Contains the name of the Zip member that holds the table details,
-e.g.@: @code{0000000001437_lightTableData.bin}.
+These element contain the name of the Zip members that hold details
+for a container. For tables:
-This element has no attributes.
+@itemize @bullet
+@item
+When a ``light'' format is used, only @code{dataPath} is present, and
+it names a @file{.bin} member of the Zip file that has @code{light} in
+its name, e.g.@: @code{0000000001437_lightTableData.bin} (@pxref{SPV
+Light Detail Member Format}).
-@node SPV pageSetup Element
+@item
+When the legacy format is used, both are present. In this case,
+@code{dataPath} names a Zip member with a legacy binary format that
+contains relevant data (@pxref{SPV Legacy Detail Member Binary
+Format}), and @code{path} names a Zip member that uses an XML format
+(@pxref{SPV Legacy Detail Member XML Format}).
+@end itemize
+
+Graphs normally follow the legacy approach described above. The
+corpus contains one example of a graph with @code{path} but not
+@code{dataPath}. The reason is unexplored.
+
+Models use @code{path} but not @code{dataPath}. @xref{SPV Structure
+graph Element}, for more information.
+
+These elements have no attributes.
+
+@node SPV Structure pageSetup Element
@subsection The @code{pageSetup} Element
Parent: @code{heading} @*
Always @code{12pt}.
@end defvr
-@node SPV pageHeader and pageFooter Elements
+@node SPV Structure pageHeader and pageFooter Elements
@subsection The @code{pageHeader} and @code{pageFooter} Elements
Parent: @code{pageSetup} @*
This element has no attributes.
-@node SPV pageParagraph Element
+@node SPV Structure pageParagraph Element
@subsection The @code{pageParagraph} Element
Parent: @code{pageHeader} or @code{pageFooter} @*
This element has no attributes.
-@node SPV @code{text} Element (Inside @code{pageParagraph})
+@node SPV Structure @code{text} Element (Inside @code{pageParagraph})
@subsection The @code{text} Element (Inside @code{pageParagraph})
Parent: @code{pageParagraph} @*
-Contents: [CDATA]
+Contents: CDATA?
This @code{text} element is nested inside a @code{pageParagraph}. There
is a different @code{text} element that is nested inside a
text: in the corpus, either an @code{html} or @code{p} element. It is
@emph{almost}-XHTML because the @code{html} element designates the
default namespace as
-@code{http://xml.spss.com/spss/viewer/viewer-tree} instead of an XHTML
+@indicateurl{http://xml.spss.com/spss/viewer/viewer-tree} instead of an XHTML
namespace, and because the CDATA can contain substitution variables:
@code{&[Page]} for the page number and @code{&[PageTitle]} for the
page title.
and have no semantic significance.
@item 00, 01, @dots{}, ff.
-Bytes with fixed values are written in hexadecimal:
+A bytes with a fixed value, written as a pair of hexadecimal digits.
@item i0, i1, @dots{}, i9, i10, i11, @dots{}
-32-bit integers with fixed values are written in decimal, prefixed by
+@itemx b0, b1, @dots{}, b9, b10, b11, @dots{}
+A 32-bit integer in little-endian or big-endian byte order,
+respectively, with a fixed value, written in decimal, prefixed by
@samp{i}.
@item byte
-An arbitrary byte.
+A byte.
+
+@item bool
+A byte with value 0 or 1.
+
+@item int16
+@itemx be16
+A 16-bit integer in little-endian or big-endian byte order,
+respectively.
@item int
-An arbitrary 32-bit integer.
+@itemx be32
+A 32-bit integer in little-endian or big-endian byte order,
+respectively.
+
+@item int64
+@itemx be64
+A 64-bit integer in little-endian or big-endian byte order,
+respectively.
@item double
-An arbitrary 64-bit IEEE floating-point number.
+A 64-bit IEEE floating-point number.
+
+@item float
+A 32-bit IEEE floating-point number.
@item string
-A 32-bit integer followed by the specified number of bytes of
-character data. (The encoding is indicated by the Formats
-nonterminal.)
+@itemx bestring
+A 32-bit integer, in little-endian or big-endian byte order,
+respectively, followed by the specified number of bytes of character
+data. (The encoding is indicated by the Formats nonterminal.)
@item @var{x}?
@var{x} is optional, e.g.@: 00? is an optional zero byte.
In a version 3 @file{.bin} member, @var{x}; in version 1, nothing.
@end table
-All integer and floating-point values in this format use little-endian
-byte order.
+Little-endian byte order is far more common in this format, but a few
+pieces of the format use big-endian byte order.
A ``light'' detail member @file{.bin} consists of a number of sections
concatenated together, terminated by a byte 01:
@cartouche
@format
-LightMember @result{} Header Title Caption Footnotes Fonts Formats Dimensions Data 01
+LightMember @result{}
+ Header Title
+ Caption Footnotes
+ Fonts Borders PrintSettings TableSettings Formats
+ Dimensions Data
+ 01
@end format
@end cartouche
@menu
* SPV Light Member Header::
* SPV Light Member Title::
-* PSV Light Member Caption::
+* SPV Light Member Caption::
* SPV Light Member Footnotes::
* SPV Light Member Fonts::
+* SPV Light Member Borders::
+* SPV Light Member Print Settings::
+* SPV Light Member Table Settings::
* SPV Light Member Formats::
* SPV Light Member Dimensions::
* SPV Light Member Categories::
@node SPV Light Member Header
@subsection Header
-An SPV file begins with an 39-byte header:
+An SPV light member begins with a 39-byte header:
@cartouche
@format
Header @result{}
01 00
(i1 @math{|} i3)[@t{version}]
- 01 (00 @math{|} 01) byte*21 00 00
- int[@t{table-id}] byte*4
+ bool
+ bool[@t{show-numeric-markers}]
+ bool[@t{rotate-inner-column-labels}]
+ bool[@t{rotate-outer-row-labels}]
+ bool
+ int
+ int[@t{min-column-width}] int[@t{max-column-width}]
+ int[@t{min-row-width}] int[@t{max-row-width}]
+ int64[@t{table-id}]
@end format
@end cartouche
and ``version 3'' later on and use v1(@dots{}) and v3(@dots{}) for
version-specific formatting (as described previously).
+If @code{show-numeric-markers} is 1, footnote markers are shown as
+numbers, starting from 1; otherwise, they are shown as letters,
+starting from @samp{a}.
+
+If @code{rotate-inner-column-labels} is 1, then column labels closest
+to the data are rotated to be vertical; otherwise, they are shown
+in the normal way.
+
+If @code{rotate-outer-row-labels} is 1, then row labels farthest from
+the data are rotated to be vertical; otherwise, they are shown in the
+normal way.
+
@code{table-id} is a binary version of the @code{tableId} attribute in
the structure member that refers to the detail member. For example,
-if @code{tableId} is @code{-4154297861994971133}, then @code{table-id}
-would be 0xdca00003.
+if @code{tableId} is @code{-4122591256483201023}, then @code{table-id}
+would be 0xc6c99d183b300001.
+
+@code{min-column-width} is the minimum width that a column will be
+assigned automatically. @code{max-column-width} is the maximum width
+that a column will be assigned to accommodate a long column label.
+@code{min-row-width} and @code{max-row-width} are a similar range for
+the width of row labels. All of these measurements are in 1/96 inch
+units.
The meaning of the other variable parts of the header is not known.
Title @result{}
Value[@t{title1}] 01?
Value[@t{c}] 01? 31
- Value[@t{title2}] 01? 00? 58
+ Value[@t{title2}] 01?
@end format
@end cartouche
well formatted. For example, for a frequency table, @code{title1} and
@code{title2} name the variable and @code{c} is simply ``Frequencies''.
-@node PSV Light Member Caption
+@node SPV Light Member Caption
@subsection Caption
@cartouche
@format
-Caption @result{} 58 @math{|} 31 Value[@t{caption}]
+Caption @result{} Caption1 Caption2
+Caption1 @result{} 31 Value @math{|} 58
+Caption2 @result{} 31 Value @math{|} 58
@end format
@end cartouche
-The @code{caption}, if presented, is shown below the table.
+The Caption, if present, is shown below the table. Caption2 is
+normally present. Caption1 is only rarely nonempty; it might reflect
+user editing of the caption.
@node SPV Light Member Footnotes
@subsection Footnotes
@format
Fonts @result{} 00 Font*8
Font @result{}
- byte[@t{index}] 31 string[@t{typeface}] 00 00
- (10 @math{|} 20 @math{|} 40 @math{|} 50 @math{|} 70 @math{|} 80)[@t{f1}] 41
- (i0 @math{|} i1 @math{|} i2)[@t{f2}] 00
- (i0 @math{|} i2 @math{|} i64173)[@t{f3}]
- (i0 @math{|} i1 @math{|} i2 @math{|} i3)[@t{f4}]
- string[@t{fgcolor}] string[@t{bgcolor}] i0 i0 00
- v3(int[@t{f5}] int[@t{f6}] int[@t{f7}] int[@t{f8}]))
+ byte[@t{index}] 31
+ string[@t{typeface}] float[@t{size}] int[@t{style}] bool[@t{underline}]
+ int[@t{halign}] int[@t{valign}]
+ string[@t{fgcolor}] string[@t{bgcolor}]
+ byte[@t{alternate}] string[@t{altfg}] string[@t{altbg}]
+ v3(int[@t{left-margin}] int[@t{right-margin}] int[@t{top-margin}] int[@t{bottom-margin}])
@end format
@end cartouche
Each Font represents the font style for a different element, in the
-following order: title, caption, footnote, row labels, column labels,
-corner labels, data, and layers.
+following order: title, caption, footer, corner, column
+labels, row labels, data, and layers.
@code{index} is the 1-based index of the Font, i.e. 1 for the first
Font, through 8 for the final Font.
is @code{SansSerif} in over 99% of instances and @code{Times New
Roman} in the rest.
+@code{size} is the size of the font, in points. The most common size
+in the corpus is 12 points.
+
+@code{style} is a bit mask. Bit 0 (with value 1) is set for bold, bit
+1 (with value 2) is set for italic.
+
+@code{underline} is 1 if the font is underlined, 0 otherwise.
+
+@code{halign} specifies horizontal alignment: 0 for center, 2 for
+left, 4 for right, 61453 for decimal, 64173 for mixed. Mixed
+alignment varies according to type: string data is left-justified,
+numbers and most other formats are right-justified.
+
+@code{valign} specifies vertical alignment: 0 for center, 1 for top, 3
+for bottom.
+
@code{fgcolor} and @code{bgcolor} are the foreground color and
background color, respectively. In the corpus, these are always
@code{#000000} and @code{#ffffff}, respectively.
-The meaning of the remaining data is unknown. It seems likely to
-include font sizes, horizontal and vertical alignment, attributes such
-as bold or italic, and margins.
-
-The table below lists the values observed in the corpus. When a cell
-contains a single value, then 99@math{+}% of the corpus contains that value.
-When a cell contains a pair of values, then the first value is seen in
-about two-thirds of the corpus and the second value in about the
-remaining one-third. In fonts that include multiple pairs, values are
-correlated, that is, for font 3, f5 = 24, f6 = 24, f7 = 2 appears
-about two-thirds of the time, as does the combination of f4 = 0, f6 =
-10 for font 7.
-
-@multitable {font} {40} {f2} {64173} {0/1} {24/11} {10/11} {2/3} {f8}
-@headitem font @tab f1 @tab f2 @tab f3 @tab f4 @tab f5 @tab f6 @tab f7 @tab f8
-@item 1 @tab 40 @tab 1 @tab 0 @tab 0 @tab 8 @tab 10/11 @tab 1 @tab 8
-@item 2 @tab 40 @tab 0 @tab 2 @tab 1 @tab 8 @tab 10/11 @tab 1 @tab 1
-@item 3 @tab 40 @tab 0 @tab 2 @tab 1 @tab 24/11 @tab 24/ 8 @tab 2/3 @tab 4
-@item 4 @tab 40 @tab 0 @tab 2 @tab 3 @tab 8 @tab 10/11 @tab 1 @tab 1
-@item 5 @tab 40 @tab 0 @tab 0 @tab 1 @tab 8 @tab 10/11 @tab 1 @tab 4
-@item 6 @tab 40 @tab 0 @tab 2 @tab 1 @tab 8 @tab 10/11 @tab 1 @tab 4
-@item 7 @tab 40 @tab 0 @tab 64173 @tab 0/1 @tab 8 @tab 10/11 @tab 1 @tab 1
-@item 8 @tab 40 @tab 0 @tab 2 @tab 3 @tab 8 @tab 10/11 @tab 1 @tab 4
-@end multitable
+@code{alternate} is 01 if rows should alternate colors, 00 if all rows
+should be the same color. When @code{alternate} is 01, @code{altfg}
+and @code{altbg} specify the colors for the alternate rows.
+
+@code{left-margin}, @code{right-margin}, @code{top-margin}, and
+@code{bottom-margin} are measured in multiples of 1/96 inch.
+
+@node SPV Light Member Borders
+@subsection Borders
+
+@cartouche
+@format
+Borders @result{}
+ b1[@t{endian}]
+ be32[@t{n-borders}] Border*[@t{n-borders}]
+ bool[@t{show-grid-lines}]
+ 00 00 00
+
+Border @result{}
+ be32[@t{border-type}]
+ be32[@t{stroke-type}]
+ be32[@t{color}]
+@end format
+@end cartouche
+
+The Borders reflect how borders between regions are drawn.
+
+The fixed value of @code{endian} can be used to validate the
+endianness.
+
+@code{show-grid-lines} is 1 to draw grid lines, otherwise 0.
+
+Each Border describes one kind of border. @code{n-borders} seems to
+always be 19. Each @code{border-type} appears once (although in an
+unpredictable order) and correspond to the following borders:
+
+@table @asis
+@item 0
+Title.
+@item 1@dots{}4
+Left, top, right, and bottom outer frame.
+@item 5@dots{}8
+Left, top, right, and bottom inner frame.
+@item 9, 10
+Left and top of data area.
+@item 11, 12
+Horizontal and vertical dimension rows.
+@item 13, 14
+Horizontal and vertical dimension columns.
+@item 15, 16
+Horizontal and vertical category rows.
+@item 17, 18
+Horizontal and vertical category columns.
+@end table
+
+@code{stroke-type} describes how a border is drawn, as one of:
+
+@table @asis
+@item 0
+No line.
+@item 1
+Solid line.
+@item 2
+Dashed line.
+@item 3
+Thick line.
+@item 4
+Thin line.
+@item 5
+Double line.
+@end table
+
+@code{color} is an RGB color. Bits 24--31 are alpha, bits 16--23 are
+red, 8--15 are green, 0--7 are blue. An alpha of 255 indicates an
+opaque color, therefore opaque black is 0xff000000.
+
+@node SPV Light Member Print Settings
+@subsection Print Settings
+
+@cartouche
+@format
+PrintSettings @result{}
+ b1[@t{endian}]
+ bool[@t{all-layers}]
+ bool[@t{paginate-layers}]
+ bool[@t{fit-width}]
+ bool[@t{fit-length}]
+ bool[@t{top-continuation}]
+ bool[@t{bottom-continuation}]
+ be32[@t{n-orphan-lines}]
+ bestring[@t{continuation-string}]
+@end format
+@end cartouche
+
+The PrintSettings reflect settings for printing. The fixed value of
+@code{endian} can be used to validate the endianness.
+
+@code{all-layers} is 1 to print all layers, 0 to print only the
+visible layers.
+
+@code{paginate-layers} is 1 to print each layer at the start of a new
+page, 0 otherwise. (This setting is honored only @code{all-layers} is
+1, since otherwise only one layer is printed.)
+
+@code{fit-width} and @code{fit-length} control whether the table is
+shrunk to fit within a page's width or length, respectively.
+
+@code{n-orphan-lines} is the minimum number of rows or columns to put
+in one part of a table that is broken across pages.
+
+If @code{top-continuation} is 1, then @code{continuation-string} is
+printed at the top of a page when a table is broken across pages for
+printing; similarly for @code{bottom-continuation} and the bottom of a
+page. Usually, @code{continuation-string} is empty.
+
+@node SPV Light Member Table Settings
+@subsection Table Settings
+
+@cartouche
+@format
+TableSettings @result{}
+ be32[@t{endian}]
+ be32
+ be32[@t{current-layer}]
+ bool[@t{omit-empty}]
+ bool[@t{show-row-labels-in-corner}]
+ bool[@t{show-alphabetic-markers}]
+ bool[@t{footnote-marker-position}]
+ v3(
+ byte
+ count(
+ Breakpoints[@t{row-breaks}] Breakpoints[@t{column-breaks}]
+ Keeps[@t{row-keeps}] Keeps[@t{column-keeps}]
+ PointKeeps[@t{row-keeps}] PointKeeps[@t{column-keeps}]
+ )
+ bestring[@t{notes}]
+ bestring[@t{table-look}]
+ 00...
+ )
+
+Breakpoints @result{} be32[@t{n-breaks}] be32*[@t{n-breaks}]
+
+Keeps @result{} be32[@t{n-keeps}] Keep*@t{n-keeps}
+Keep @result{} be32[@t{offset}] be[@t{n}]
+
+PointKeeps @result{} be32[@t{n-point-keeps}] PointKeep*@t{n-point-keeps}
+PointKeep @result{} be32[@t{offset}] be32 be32
+
+@end format
+@end cartouche
+
+The TableSettings reflect display settings. The fixed value of
+@code{endian} can be used to validate the endianness.
+
+@code{current-layer} is the displayed layer.
+
+If @code{omit-empty} is 1, empty rows or columns (ones with nothing in
+any cell) are hidden; otherwise, they are shown.
+
+If @code{show-row-labels-in-corner} is 1, then row labels are shown in
+the upper left corner; otherwise, they are shown nested.
+
+If @code{show-alphabetic-markers} is 1, markers are shown as letters
+(e.g. @samp{a}, @samp{b}, @samp{c}, @dots{}); otherwise, they are
+shown as numbers starting from 1.
+
+When @code{footnote-marker-position} is 1, footnote markers are shown
+as superscripts, otherwise as subscripts.
+
+The Breakpoints are rows or columns after which there is a page break;
+for example, a row break of 1 requests a page break after the second
+row. Usually no breakpoints are specified, indicating that page
+breaks should be selected automatically.
+
+The Keeps are ranges of rows or columns to be kept together without a
+page break; for example, a row Keep with @code{offset} 1 and @code{n}
+10 requests that the 10 rows starting with the second row be kept
+together. Usually no Keeps are specified.
+
+The PointKeeps seem to be generated automatically based on
+user-specified Keeps. They seems to indicate a conversion from rows
+or columns to pixel or point offsets.
+
+@code{notes} is a text string that contains user-specified notes. It
+is displayed when the user hovers the cursor over the table, like
+``alt text'' on a webpage. It is not printed. It is usually empty.
+
+@code{table-look} is the name of a SPSS ``TableLook'' table style,
+such as ``Default'' or ``Academic''; it is often empty.
+
+TableSettings ends with an arbitrary number of null bytes.
@node SPV Light Member Formats
@subsection Formats
@cartouche
@format
Formats @result{}
- int[@t{n1}] byte*[@t{n1}]
- int[@t{n2}] byte*[@t{n2}]
- int[@t{n3}] byte*[@t{n3}]
- int[@t{n4}] int*[@t{n4}]
+ int[@t{n-widths}] int*[@t{n-widths}]
string[@t{encoding}]
- (i0 @math{|} i-1) (00 @math{|} 01) 00 (00 @math{|} 01)
- int
+ int[@t{current-layer}]
+ bool[@t{digit-grouping}] bool[@t{leading-zero}] bool
+ int[@t{epoch}]
byte[@t{decimal}] byte[@t{grouping}]
- int[@t{n-ccs}] string*[@t{n-ccs}]
- v1(i0)
- v3(count(count(X5) count(X6)))
-
-X5 @result{} byte*33 int[@t{n}] int*[@t{n}]
-X6 @result{}
+ CustomCurrency
+ count(
+ v1(X0?)
+ v3(count(X1 count(X2)) count(X3))
+
+X0 @result{}
+ byte*14
+ string[@t{command}] string[@t{command-local}]
+ string[@t{language}] string[@t{charset}] string[@t{locale}]
+ bool 00 bool bool
+ int[@t{epoch}]
+ byte[@t{decimal}] byte[@t{grouping}]
+ CustomCurrency
+ byte[@t{missing}] bool
+
+X1 @result{}
+ byte*2
+ byte[@t{lang}]
+ byte[@t{variable-mode}]
+ byte[@t{value-mode}]
+ int*2
+ 00*17
+ bool
+ 01
+X2 @result{}
+ int[@t{n-heights}] int*[@t{n-heights}]
+ int[@t{n-style-map}] BlankMap*[@t{n-style-map}]
+ int[@t{n-styles}] StylePair*[@t{n-styles}]
+ count((i0 i0)?)
+StyleMap @result{} int64[@t{cell-index}] int16[@t{style-index}]
+X3 @result{}
01 00 (03 @math{|} 04) 00 00 00
- string[@t{command}] string[@t{subcommand}]
+ string[@t{command}] string[@t{command-local}]
string[@t{language}] string[@t{charset}] string[@t{locale}]
- (00 @math{|} 01) 00 (00 @math{|} 01) (00 @math{|} 01)
- int
+ bool 00 bool bool
+ int[@t{epoch}]
byte[@t{decimal}] byte[@t{grouping}]
- byte*8 01
- (string[@t{dataset}] string[@t{datafile}] i0 int i0)?
- int[@t{n-ccs}] string*[@t{n-ccs}]
- 2e (00 @math{|} 01) (i2000000 i0)?
+ double[@t{small}] 01
+ (string[@t{dataset}] string[@t{datafile}] i0 int[@t{date}] i0)?
+ CustomCurrency
+ byte[@t{missing}] bool (i2000000 i0)?
+
+CustomCurrency @result{} int[@t{n-ccs}] string*[@t{n-ccs}]
@end format
@end cartouche
-In every example in the corpus, @code{n1} is 240. The meaning of the
-bytes that follow it is unknown.
-
-In every example in the corpus, @code{n2} is 18 and the bytes that
-follow it are @code{00 00 00 01 00 00 00 00 00 00 00 00 00 02 00 00 00
-00}. The meaning of these bytes is unknown.
-
-In every example in the corpus for version 1, @code{n3} is 16 and the
-bytes that follow it are @code{00 00 00 01 00 00 00 01 00 00 00 00 01
-01 01 01}. In version 3, observed @code{n3} varies from 117 to 150,
-and its bytes include a 1-byte count at offset 0x34. When the count
-is nonzero, a text string of that length at offset 0x35 is the name of
-a ``TableLook'', e.g. ``Default'' or ``Academic''.
-
-Observed values of @code{n4} vary from 0 to 17. Out of 7,060 examples
-in the corpus, it is nonzero only 36 times.
+If @code{n-widths} is nonzero, then the accompanying integers are
+column widths as manually adjusted by the user. (Row heights are
+computed automatically based on the widths.)
@code{encoding} is a character encoding, usually a Windows code page
such as @code{en_US.windows-1252} or @code{it_IT.windows-1252}. The
rest of the character strings in the member use this encoding. The
encoding string is itself encoded in US-ASCII.
+@code{epoch} is the year that starts the epoch. A 2-digit year is
+interpreted as belonging to the 100 years beginning at the epoch. The
+default epoch year is 69 years prior to the current year; thus, in
+2017 this field by default contains 1948. In the corpus, @code{epoch}
+ranges from 1943 to 1948, plus some contain -1.
+
@code{decimal} is the decimal point character. The observed values
are @samp{.} and @samp{,}.
@samp{'} (apostrophe), @samp{ } (space), and zero (presumably
indicating that digits should not be grouped).
+@code{command} describes the statistical procedure that generated the
+output, in English. It is not necessarily the literal syntax name of
+the procedure: for example, NPAR TESTS becomes ``Nonparametric
+Tests.'' @code{command-local} is the procedure's name, translated
+into the output language; it is often empty and, when it is not,
+sometimes the same as @code{command}.
+
+@code{dataset} is the name of the dataset analyzed to produce the
+output, e.g.@: @code{DataSet1}, and @code{datafile} the name of the
+file it was read from, e.g.@: @file{C:\Users\foo\bar.sav}. The latter
+is sometimes the empty string.
+
+@code{date} is a date, as seconds since the epoch, i.e.@: since
+January 1, 1970. Pivot tables within an SPV files often have dates a
+few minutes apart, so this is probably a creation date for the tables
+rather than for the file.
+
+Sometimes @code{dataset}, @code{datafile}, and @code{date} are present
+and other times they are absent. The reader can distinguish by
+assuming that they are present and then checking whether the
+presumptive @code{dataset} contains a null byte (a valid string never
+will).
+
@code{n-ccs} is observed as either 0 or 5. When it is 5, the
following strings are CCA through CCE format strings. @xref{Custom
Currency Formats,,, pspp, PSPP}. Most commonly these are all
@code{-,,,} but other strings occur.
+@code{missing} is the character used to indicate that a cell contains
+a missing value. It is always observed as @samp{.}.
+
@node SPV Light Member Dimensions
@subsection Dimensions
@cartouche
@format
Dimensions @result{} int[@t{n-dims}] Dimension*[@t{n-dims}]
-Dimension @result{} Value[@t{name}] DimUnknown int[@t{n-categories}] Category*[@t{n-categories}]
-DimUnknown @result{}
+Dimension @result{} Value[@t{name}] DimProperties int[@t{n-categories}] Category*[@t{n-categories}]
+DimProperties @result{}
byte[@t{d1}]
(00 @math{|} 01 @math{|} 02)[@t{d2}]
(i0 @math{|} i2)[@t{d3}]
- (00 @math{|} 01)[@t{d4}]
- (00 @math{|} 01)[@t{d5}]
- 01
- int[@t{d6}]
+ bool[@t{show-dim-label}]
+ bool[@t{hide-all-labels}]
+ 01 int[@t{dim-index}]
@end format
@end cartouche
@code{name} is the name of the dimension, e.g. @code{Variables},
@code{Statistics}, or a variable name.
+The meanings of @code{d1}, @code{d2}, and @code{d3} are unknown.
@code{d1} is usually 0 but many other values have been observed.
-@code{d3} is 2 over 99% of the time.
+If @code{show-dim-label} is 01, the pivot table displays a label for
+the dimension itself. Because usually the group and category labels
+are enough explanation, it is usually 00.
-@code{d5} is 0 over 99% of the time.
+If @code{hide-all-labels} is 01, the pivot table omits all labels for
+the dimension, including group and category labels. It is usually 00.
+When @code{hide-all-labels} is 01, @code{show-dim-label} is ignored.
-@code{d6} is either -1 or the 0-based index of the dimension, e.g.@: 0
-for the first dimension, 1 for the second, and so on. The latter is
-the case 98% of the time in the corpus.
+@code{dim-index} is usually the 0-based index of the dimension, e.g.@:
+0 for the first dimension, 1 for the second, and so on. Sometimes it
+is -1. There is no visible difference.
@node SPV Light Member Categories
@subsection Categories
@cartouche
@format
Category @result{} Value[@t{name}] (Leaf @math{|} Group)
-Leaf @result{} 00 00 00 i2 int[@t{index}] i0
+Leaf @result{} 00 00 00 i2 int[@t{cat-index}] i0
Group @result{}
- (00 @math{|} 01)[@t{merge}] 00 01 (i0 @math{|} i2)[@t{data}]
+ bool[@t{merge}] 00 01 (i0 @math{|} i2)[@t{data}]
i-1 int[@t{n-subcategories}] Category*[@t{n-subcategories}]
@end format
@end cartouche
@code{name} is the name of the category (or group).
-A Leaf represents a leaf category. The Leaf's @code{index} is a
+A Leaf represents a leaf category. The Leaf's @code{cat-index} is a
nonnegative integer less than @code{n-categories} in the Dimension in
-which the Category is nested (directly or indirectly).
+which the Category is nested (directly or indirectly). These
+categories represent the original order in which the categories were
+sorted; if the user sorted or rearranged the categories, then the
+order of categories in the file reflects that without changing the
+@code{cat-index} values.
-A Group represents a Group of nested categories. Usually a Group
-contains at least one Category, so that @code{n-subcategories} is
-positive, but a few Groups with @code{n-subcategories} 0 has been
-observed.
+A Group is a group of nested categories. Usually a Group contains at
+least one Category, so that @code{n-subcategories} is positive, but a
+few Groups with @code{n-subcategories} 0 has been observed.
If a Group's @code{merge} is 00, the most common value, then the group
is really a distinct group that should be represented as such in the
Data @result{}
int[@t{layers}] int[@t{rows}] int[@t{columns}] int*[@t{n-dimensions}]
int[@t{n-data}] Datum*[@t{n-data}]
-Datum @result{} int64[@t{index}] v3(00?) Value
+Datum @result{} int64[@t{index}] v1(00?) Value
@end format
@end cartouche
-The values of @code{layers}, @code{rows}, and @code{columns} each
-specifies the number of dimensions displayed in layers, rows, and
+The values of @code{n-layers}, @code{n-rows}, and @code{n-columns}
+each specifies the number of dimensions displayed in layers, rows, and
columns, respectively. Any of them may be zero. Their values sum to
@code{n-dimensions} from Dimensions (@pxref{SPV Light Member
Dimensions}).
The @code{n-dimensions} integers are a permutation of the 0-based
-dimension numbers. The first @code{layers} integers specify each of
-the dimensions represented by layers, the next @code{rows} integers
+dimension numbers. The first @code{n-layers} integers specify each of
+the dimensions represented by layers, the next @code{n-rows} integers
specify the dimensions represented by rows, and the final
-@code{columns} integers specify the dimensions represented by columns.
-When there is more than one dimension of a given kind, the inner
-dimensions are given first.
+@code{n-columns} integers specify the dimensions represented by
+columns. When there is more than one dimension of a given kind, the
+inner dimensions are given first.
The format of a Datum varies slightly from version 1 to version 3: in
version 1 it allows for an extra optional 00 byte.
For example, suppose there are 3 dimensions with 3, 4, and 5
categories, respectively. The datum at coordinates (1, 2, 3) has
index @math{5 \times (4 \times (3 \times 0 + 1) + 2) + 3 = 33}.
+Within a given dimension, the index is the @code{cat-index} in a Leaf.
@node SPV Light Member Value
@subsection Value
01 ValueMod int[@t{format}] double[@t{x}]
@math{|} 02 ValueMod int[@t{format}] double[@t{x}]
string[@t{varname}] string[@t{vallab}] (01 @math{|} 02 @math{|} 03)
- @math{|} 03 string[@t{local}] ValueMod string[@t{id}] string[@t{c}] (00 @math{|} 01)[@t{type}]
+ @math{|} 03 string[@t{local}] ValueMod string[@t{id}] string[@t{c}] bool[@t{type}]
@math{|} 04 ValueMod int[@t{format}] string[@t{vallab}] string[@t{varname}]
(01 @math{|} 02 @math{|} 03) string[@t{s}]
@math{|} 05 ValueMod string[@t{varname}] string[@t{varlabel}] (01 @math{|} 02 @math{|} 03)
ValueMod @result{}
31 i0 (i0 @math{|} i1 string[@t{subscript}])
v1(00 (i1 @math{|} i2) 00 00 int 00 00)
- v3(count(FormatString Style ValueModUnknown))
- @math{|} 31 i1 int[@t{footnote-number}] Format
- @math{|} 31 i2 (00 @math{|} 01 @math{|} 02) 00 (i1 @math{|} i2 @math{|} i3) Format
- @math{|} 31 i3 00 00 01 00 i2 Format
+ v3(count(FormatString StylePair))
+ @math{|} 31 int[@t{n-refs}] int16*[@t{n-refs}] Format
@math{|} 58
-Style @result{} 58 @math{|} 31 01? 00? 00? 00? 01 string[@t{fgcolor}] string[@t{bgcolor}] string[@t{typeface}] byte
+
Format @result{} 00 00 count(FormatString Style 58)
-FormatString @result{} count((i0 (58 @math{|} 31 string))?)
-ValueModUnknown @result{} 58 @math{|} 31 i0 i0 i0 i0 01 00 (01 @math{|} 02 @math{|} 08) 00 08 00 0a 00)
+FormatString @result{} count((count((i0 58)?) (58 @math{|} 31 string))?)
+
+StylePair @result{}
+ (31 Style | 58)
+ (31 Style2 | 58)
+
+Style @result{}
+ bool[@t{bold}] bool[@t{italic}] bool[@t{underline}] bool[@t{show}]
+ string[@t{fgcolor}] string[@t{bgcolor}]
+ string[@t{typeface}] byte[@t{size}]
+
+Style2 @result{}
+ int[@t{halign}] int[@t{valign}] double[@t{offset}]
+ int16[@t{left-margin}] int16[@t{right-margin}]
+ int16[@t{top-margin}] int16[@t{bottom-margin}]
@end format
@end cartouche
-The @code{footnote-number}, if present, specifies a footnote that the
-Value references. The footnote's marker is shown appended to the main
-text of the Value, as a superscript.
+A ValueMod that begins with ``31 i0'' specifies a string to append to
+the main text of the Value, as a subscript. The subscript text is a
+brief indicator, e.g.@: @samp{a} or @samp{a,b}, with its meaning
+indicated by the table caption. In this usage, subscripts are similar
+to footnotes. One apparent difference is that a Value can only
+reference one footnote but a subscript can list more than one letter.
-The @code{subscript}, if present, specifies a string to append to the
-main text of the Value, as a subscript. The subscript text is a brief
-indicator, e.g.@: @samp{a} or @samp{a,b}, with its meaning indicated
-by the table caption. In this usage, subscripts are similar to
-footnotes; one apparent difference is that a Value can only reference
-one footnote but a subscript can list more than one letter.
+A ValueMod that begins with 31 followed by a nonzero ``int'' specifies
+a footnote or footnotes that the Value references. Footnote markers
+are shown appended to the main text of the Value, as superscripts.
The Format, if present, is a format string for substitutions using the
syntax explained previously. It appears to be an English-language
version of the localized format string in the Value in which the
Format is nested.
-The Style, if present, changes the style for this individual Value.
+Style and Style2, if present, change the style for this individual
+Value. @code{bold}, @code{italic}, and @code{underline} control the
+particular style. @code{fgcolor} and @code{bgcolor} are strings, such
+as @code{#ffffff}. The @code{size} is a font size in units of 1/96
+inch.
+
+@code{halign} is 0 for center, 2 for left, 4 for right, 6 for decimal,
+0xffffffad for mixed. For decimal alignment, @code{offset} is the
+decimal point's offset from the right side of the cell, in units of
+1/72 inch.
+
+@code{valign} specifies vertical alignment: 0 for center, 1 for top, 3
+for bottom.
+
+@code{left-margin}, @code{right-margin}, @code{top-margin}, and
+@code{bottom-margin} are in units of 1/72 inch.
@node SPV Legacy Detail Member Binary Format
@section Legacy Detail Member Binary Format
Whereas the light binary format represents everything about a given
pivot table, the legacy binary format conceptually consists of a
number of named sources, each of which consists of a number of named
-series, each of which is a 1-dimensional array of numbers or strings
-or a mix. Thus, the legacy binary member format is quite simple.
+variables, each of which is a 1-dimensional array of numbers or
+strings or a mix. Thus, the legacy binary member format is quite
+simple.
This section uses the same context-free grammar notation as in the
previous section, with the following additions:
@cartouche
@format
Metadata @result{}
- int[@t{per-series}] int[@t{n-series}] int[@t{offset}]
+ int[@t{n-data}] int[@t{n-variables}] int[@t{offset}]
vAF(byte*32[@t{source-name}])
vB0(byte*64[@t{source-name}] int[@t{x}])
@end format
@end cartouche
-A data source consists of @code{n-series} series of data, with
-@code{per-series} data values per series.
+A data source has @code{n-variables} variables, each with
+@code{n-data} data values.
@code{source-name} is a 32- or 64-byte string padded on the right with
-zero bytes. The names that appear in the corpus are very generic,
-usually @code{tableData} or @code{source0}.
+zero bytes. The names that appear in the corpus are very generic:
+usually @code{tableData} for pivot table data or @code{source0} for
+chart data.
A given Metadata's @code{offset} is the offset, in bytes, from the
beginning of the member to the start of the corresponding Data. This
@cartouche
@format
-Data @result{} NumericData StringData?
-NumericData @result{} NumericSeries*[@t{n-series}]
-NumericSeries @result{} byte*288[@t{series-name}] double*[@t{per-series}]
+Data @result{} NumericData*[@t{n-variables}] StringData?
+NumericData @result{} byte*288[@t{variable-name}] double*[@t{n-data}]
@end format
@end cartouche
Data follow the Metadata in the legacy binary format, with sources in
-the same order. Each NumericSeries begins with a @code{series-name}
+the same order. Each NumericSeries begins with a @code{variable-name}
that generally indicates its role in the pivot table, e.g.@: ``cell'',
``cellFormat'', ``dimension0categories'', ``dimension0group0'',
-followed by the numeric data, one double per element in the series. A
-double with the maximum negative double @code{-DBL_MAX} represents the
-system-missing value SYSMIS.
+followed by the numeric data, one double per datum. A double with the
+maximum negative double @code{-DBL_MAX} represents the system-missing
+value SYSMIS.
@cartouche
@format
StringData @result{} i1 string[@t{source-name}] Pairs Labels
-Pairs @result{} int[@t{n-string-series}] PairSeries*[@t{n-string-series}]
-PairSeries @result{} string[@t{pair-series-name}] int[@t{n-pairs}] Pair*[@t{n-pairs}]
+Pairs @result{} int[@t{n-string-vars}] PairSeries*[@t{n-string-vars}]
+PairVar @result{} string[@t{pair-var-name}] int[@t{n-pairs}] Pair*[@t{n-pairs}]
Pair @result{} int[@t{i}] int[@t{j}]
Labels @result{} int[@t{n-labels}] Label*[@t{n-labels}]
A source may include a mix of numeric and string data values. When a
source includes any string data, the data values that are strings are
-set to SYSMIS in the NumericSeries, and StringData follows the
+set to SYSMIS in the NumericData, and StringData follows the
NumericData. A source that contains no string data omits the
StringData. To reliably determine whether a source includes
StringData, the reader should check whether the offset following the
-NumericData is the offset of the next series, as indicated by its
+NumericData is the offset of the next source, as indicated by its
Metadata (or the end of the member, in the case of the last source).
StringData repeats the name of the source (from Metadata).
-The string data overlays the numeric data. @code{n-string-series} is
-the number of series within the source that include string data. More
-precisely, it is the 1-based index of the last series in the source
+The string data overlays the numeric data. @code{n-string-vars} is
+the number of variables in the source that include string data. More
+precisely, it is the 1-based index of the last variable in the source
that includes any string data; thus, it would be 4 if there are 5
-series and only the fourth one includes string data.
+variables and only the fourth one includes string data.
-Each PairSeries consists a sequence of 0 or more Pair nonterminals,
-each of which maps from a 0-based index within series @code{i} to a
+Each PairVar consists a sequence of 0 or more Pair nonterminals, each
+of which maps from a 0-based index within variable @code{i} to a
0-based label index @code{j}, e.g.@: pair @code{i} = 2, @code{j} = 3,
means that the third data value (with value SYSMIS) is to be replaced
by the string of the fourth Label.
@section Legacy Detail Member XML Format
This format is still under investigation.
+
+The design of the detail XML format is not what one would end up with
+for describing pivot tables. This is because it is a special case
+of a much more general format (``visualization XML'' or ``VizML'')
+that can describe a wide range of visualizations. Most of this
+generality is overkill for tables, and so we end up with a funny
+subset of a general-purpose format.
+
+The important elements of the detail XML format are:
+
+@itemize @bullet
+@item
+Variables. Variables in detail XML roughly correspond to the
+dimensions in a light detail member. There is one variable for each
+dimension, plus one variable for each level of labeling along an axis.
+
+The bulk of variables are defined with @code{sourceVariable} elements.
+The data for these variables comes from the associated
+@code{tableData.bin} member. Some variables are defined, with
+@code{derivedVariable} elements, as a constant or in terms of a
+mapping function from a source variable.
+
+@item
+Assignment of variables to axes. A variable can appear as columns, or
+rows, or layers. The @code{faceting} element and its sub-elements
+describe this assignment.
+@end itemize
+
+All elements have an optional @code{id} attribute. In practice many
+elements are assigned @code{id} attributes that are never referenced.
+
+@menu
+* SPV Detail visualization Element::
+* SPV Detail userSource Element::
+* SPV Detail sourceVariable Element::
+* SPV Detail derivedVariable Element::
+* SPV Detail extension Element::
+* SPV Detail graph Element::
+* SPV Detail location Element::
+* SPV Detail coordinates Element::
+* SPV Detail faceting Element::
+* SPV Detail facetLayout Element::
+* SPV Detail style Element::
+@end menu
+
+@node SPV Detail visualization Element
+@subsection The @code{visualization} Element
+
+@format
+Parent: Document root
+Contents:
+ extension?
+ userSource
+ (sourceVariable @math{|} derivedVariable)@math{+}
+ graph
+ labelFrame@math{+}
+ container?
+ style@math{+}
+ layerController?
+@end format
+
+This element has the following attributes.
+
+@defvr {Required} creator
+The version of the software that created this SPV file, as a string of
+the form @code{xxyyzz}, which represents software version xx.yy.zz,
+e.g.@: @code{160001} is version 16.0.1. The corpus includes major
+versions 16 through 19.
+@end defvr
+
+@defvr {Required} date
+The date on the which the file was created, as a string of the form
+@code{YYYY-MM-DD}.
+@end defvr
+
+@defvr {Required} lang
+The locale used for output, in Windows format, which is similar to the
+format used in Unix with the underscore replaced by a hyphen, e.g.@:
+@code{en-US}, @code{en-GB}, @code{el-GR}, @code{sr-Cryl-RS}.
+@end defvr
+
+@defvr {Required} name
+The title of the pivot table, localized to the output language.
+@end defvr
+
+@defvr {Required} style
+The @code{id} of a @code{style} element (@pxref{SPV Detail style
+Element}). This is the base style for the entire pivot table. In
+every example in the corpus, the value is @code{visualizationStyle}
+and the corresponding @code{style} element has no attributes other
+than @code{id}.
+@end defvr
+
+@defvr {Required} type
+A floating-point number. The meaning is unknown.
+@end defvr
+
+@defvr {Required} version
+The visualization schema version number. In the corpus, the value is
+one of 2.4, 2.5, 2.7, and 2.8.
+@end defvr
+
+@node SPV Detail userSource Element
+@subsection The @code{userSource} Element
+
+Parent: @code{visualization} @*
+Contents:
+
+This element has the following attributes.
+
+@defvr {Optional} missing
+Always @code{listwise}.
+@end defvr
+
+@node SPV Detail sourceVariable Element
+@subsection The @code{sourceVariable} Element
+
+Parent: @code{visualization} @*
+Contents: @code{extension}* (@code{format} @math{|} @code{stringFormat})?
+
+This element defines a variable whose values can be used elsewhere in
+the visualization. It ties this element's @code{id} to a variable
+from the @file{tableData.bin} member that corresponds to this
+@file{.xml}.
+
+This element has the following attributes.
+
+@defvr {Required} categorical
+Always set to @code{true}.
+@end defvr
+
+@defvr {Required} source
+Always set to @code{tableData}, the @code{source-name} in the
+corresponding @file{tableData.bin} member (@pxref{SPV Legacy Member
+Metadata}).
+@end defvr
+
+@defvr {Required} sourceName
+The name of a variable within the source, the @code{variable-name} in
+the corresponding @file{tableData.bin} member (@pxref{SPV Legacy
+Member Data}).
+@end defvr
+
+@defvr {Optional} dependsOn
+The @code{variable-name} of a variable linked to this one, so that a
+viewer can work with them together. For a group variable, this is the
+name of the corresponding categorical variable.
+@end defvr
+
+@defvr {Optional} label
+The variable label, if any
+@end defvr
+
+@defvr {Optional} labelVariable
+The @code{variable-name} of a variable whose string values correspond
+one-to-one with the values of this variable and are suitable for use
+as value labels.
+@end defvr
+
+@node SPV Detail derivedVariable Element
+@subsection The @code{derivedVariable} Element
+
+Parent: @code{visualization} @*
+Contents: @code{extension}* (@code{format} @math{|} @code{stringFormat} @code{valueMapEntry}*)
+
+Like @code{sourceVariable}, this element defines a variable whose
+values can be used elsewhere in the visualization. Instead of being
+read from a data source, the variable's data are defined by a
+mathematical expression.
+
+This element has the following attributes.
+
+@defvr {Required} categorical
+Always set to @code{true}.
+@end defvr
+
+@defvr {Required} value
+An expression that defines the variable's value. In theory this could
+be an arbitrary expression in terms of constants, functions, and other
+variables, e.g.@: @math{(@var{var1} + @var{var2}) / 2}. In practice,
+the corpus contains only the following forms of expressions:
+
+@table @code
+@item constant(@var{number})
+@itemx constant(@var{variable})
+A constant. The meaning when a variable is named is unknown.
+Sometimes the ``variable name'' has spaces in it.
+
+@item map(@var{variable})
+Transforms the values in the named @var{variable} using the
+@code{valueMapEntry}s contained within the element.
+@end table
+@end defvr
+
+@defvr {Optional} dependsOn
+The @code{variable-name} of a variable linked to this one, so that a
+viewer can work with them together. For a group variable, this is the
+name of the corresponding categorical variable.
+@end defvr
+
+@menu
+* SPV Detail valueMapEntry Element::
+@end menu
+
+@node SPV Detail valueMapEntry Element
+@subsubsection The @code{valueMapEntry} Element
+
+Parent: @code{derivedVariable} @*
+Contents: empty
+
+A @code{valueMapEntry} element defines a mapping from one or more
+values of a source expression to a target value. (In the corpus, the
+source expression is always just the name of a variable.) Each target
+value requires a separate @code{valueMapEntry}. If multiple source
+values map to the same target value, they can be combined or separate.
+
+@code{valueMapEntry} has the following attributes.
+
+@defvr {Required} from
+A source value, or multiple source values separated by semicolons,
+e.g.@: @code{0} or @code{13;14;15;16}.
+@end defvr
+
+@defvr {Required} to
+The target value.
+@end defvr
+
+@node SPV Detail extension Element
+@subsection The @code{extension} Element
+
+This is a general-purpose ``extension'' element. Readers that don't
+understand a given extension should be able to safely ignore it. The
+attributes on this element, and their meanings, vary based on the
+context. Each known usage is described separately below. The current
+extensions use attributes exclusively, without any nested elements.
+
+@subsubheading @code{visualization} Parent Element
+
+With @code{visualization} as its parent element, @code{extension} has
+the following attributes.
+
+@defvr {Optional} numRows
+An integer that presumably defines the number of rows in the displayed
+pivot table.
+@end defvr
+
+@defvr {Optional} showGridline
+Always set to @code{false} in the corpus.
+@end defvr
+
+@defvr {Optional} minWidthSet
+@defvrx {Optional} maxWidthSet
+Always set to @code{true} in the corpus.
+@end defvr
+
+@subsubheading @code{container} Parent Element
+
+With @code{container} as its parent element, @code{extension} has the
+following attributes.
+
+@defvr {Required} combinedFootnotes
+Always set to @code{true} in the corpus.
+@end defvr
+
+@subsubheading @code{sourceVariable} and @code{derivedVariable} Parent Element
+
+With @code{sourceVariable} or @code{derivedVariable} as its parent
+element, @code{extension} has the following attributes. A given
+parent element often contains several @code{extension} elements that
+specify the meaning of the source data's variables or sources, e.g.@:
+
+@example
+<extension from="0" helpId="corrected_model"/>
+<extension from="3" helpId="error"/>
+<extension from="4" helpId="total_9"/>
+<extension from="5" helpId="corrected_total"/>
+@end example
+
+@defvr {Required} from
+An integer or a name like ``dimension0''.
+@end defvr
+
+@defvr {Required} helpId
+An identifier.
+@end defvr
+
+@node SPV Detail graph Element
+@subsection The @code{graph} Element
+
+Parent: @code{visualization} @*
+Contents: @code{location}@math{+} @code{coordinates} @code{faceting} @code{facetLayout} @code{interval}
+
+@code{graph} has the following attributes.
+
+@defvr {Required} cellStyle
+@defvrx {Required} style
+Each of these is the @code{id} of a @code{style} element (@pxref{SPV
+Detail style Element}). The former is the default style for
+individual cells, the latter for the entire table.
+@end defvr
+
+@node SPV Detail location Element
+@subsection The @code{location} Element
+
+Parent: @code{graph} @*
+Contents: empty
+
+Each instance of this element specifies where some part of the table
+frame is located. All the examples in the corpus have four instances
+of this element, one for each of the parts @code{height},
+@code{width}, @code{left}, and @code{top}. Some examples in the
+corpus add a fifth for part @code{bottom}, even though it is not clear
+how all of @code{top}, @code{bottom}, and @code{heigth} can be honored
+at the same time. In any case, @code{location} seems to have little
+importance in representing tables; a reader can safely ignore it.
+
+@defvr {Required} part
+One of @code{height}, @code{width}, @code{top}, @code{bottom}, or
+@code{left}. Presumably @code{right} is acceptable as well but the
+corpus contains no examples.
+@end defvr
+
+@defvr {Required} method
+How the location is determined:
+
+@table @code
+@item sizeToContent
+Based on the natural size of the table. Observed only for
+parts @code{height} and @code{width}.
+
+@item attach
+Based on the location specified in @code{target}. Observed only for
+parts @code{top} and @code{bottom}.
+
+@item fixed
+Using the value in @code{value}. Observed only for parts @code{top},
+@code{bottom}, and @code{left}.
+
+@item same
+Same as the specified @code{target}. Observed only for part
+@code{left}.
+@end table
+@end defvr
+
+@defvr {Optional} min
+Minimum size. Only observed with value @code{100pt}. Only observed
+for part @code{width}.
+@end defvr
+
+@defvr {Dependent} target
+Required when @code{method} is @code{attach} or @code{same}, not
+observed otherwise. This is the ID of an element to attach to.
+Observed with the ID of @code{title}, @code{footnote}, @code{graph},
+and other elements.
+@end defvr
+
+@defvr {Dependent} value
+Required when @code{method} is @code{fixed}, not observed otherwise.
+Observed values are @code{0%}, @code{0px}, @code{1px}, and @code{3px}
+on parts @code{top} and @code{left}, and @code{100%} on part
+@code{bottom}.
+@end defvr
+
+@node SPV Detail coordinates Element
+@subsection The @code{coordinates} Element
+
+Parent: @code{graph} @*
+Contents: empty
+
+This element is always present and always empty, with no attributes
+(except @code{id}).
+
+@node SPV Detail faceting Element
+@subsection The @code{faceting} Element
+
+Parent: @code{graph} @*
+Contents: @code{cross} @code{layer}*
+
+The @code{faceting} element describes the row, column, and layer
+structure of the table. Its @code{cross} child determines the row and
+column structure, and each @code{layer} child (if any) represents a
+layer.
+
+@code{faceting} has no attributes (other than @code{id}).
+
+@subsubheading The @code{cross} Element
+
+Parent: @code{faceting} @*
+Contents: @code{nest} @code{nest}
+
+The @code{cross} element describes the row and column structure of the
+table. It has exactly two @code{nest} children, the first of which
+describes the table's rows and the second the table's columns.
+
+@code{cross} has no attributes (other than @code{id}).
+
+@subsubheading The @code{nest} Element
+
+Parent: @code{cross} @*
+Contents: @code{variableReference}@math{+}
+
+A given @code{nest} usually consists of one or more dimensions, each
+of which is represented by @code{variableReference} child elements.
+Minimally, a dimension has two @code{variableReference} children, one
+for the categories, one for the data, e.g.:
+
+@example
+<nest>
+ <variableReference ref="dimension0categories"/>
+ <variableReference ref="dimension0"/>
+</nest>
+@end example
+
+@noindent
+Groups of categories introduce additional variable references, e.g.@:
+
+@example
+<nest>
+ <variableReference ref="dimension0categories"/>
+ <variableReference ref="dimension0group0"/>
+ <variableReference ref="dimension0"/>
+</nest>
+@end example
+
+@noindent
+Grouping can be hierarchical, e.g.@:
+
+@example
+<nest>
+ <variableReference ref="dimension0categories"/>
+ <variableReference ref="dimension0group1"/>
+ <variableReference ref="dimension0group0"/>
+ <variableReference ref="dimension0"/>
+</nest>
+@end example
+
+@noindent
+XXX what are group maps?
+
+@example
+<nest id="nest_1973">
+ <variableReference ref="dimension1categories"/>
+ <variableReference ref="dimension1group1map"/>
+ <variableReference ref="dimension1group0map"/>
+ <variableReference ref="dimension1"/>
+</nest>
+<nest>
+ <variableReference ref="dimension0categories"/>
+ <variableReference ref="dimension0group0map"/>
+ <variableReference ref="dimension0"/>
+</nest>
+@end example
+
+@noindent
+A @code{nest} can contain multiple dimensions:
+
+@example
+<nest>
+ <variableReference ref="dimension1categories"/>
+ <variableReference ref="dimension1group0"/>
+ <variableReference ref="dimension1"/>
+ <variableReference ref="dimension0categories"/>
+ <variableReference ref="dimension0"/>
+</nest>
+@end example
+
+One @code{nest} within a given @code{cross} may have no dimensions, in
+which case it still has one @code{variableReference} child, which
+references a @code{derivedVariable} whose @code{value} attribute is
+@code{constant(0)}. In the corpus, such a @code{derivedVariable} has
+@code{row} or @code{column}, respectively, as its @code{id}.
+
+@code{nest} has no attributes (other than @code{id}).
+
+@subsubheading The @code{variableReference} Element
+
+Parent: @code{nest} @*
+Contents: empty
+
+@code{variableReference} has one attribute.
+
+@defvr {Required} ref
+The @code{id} of a @code{sourceVariable} or @code{derivedVariable}
+element.
+@end defvr
+
+@subsubheading The @code{layer} Element
+
+Parent: @code{faceting} @*
+Contents: empty
+
+Each layer is represented by a pair of @code{layer} elements. The
+first of this pair is for a category variable, the second for the data
+variable, e.g.:
+
+@example
+<layer value="0" variable="dimension0categories" visible="true"/>
+<layer value="dimension0" variable="dimension0" visible="false"/>
+@end example
+
+@noindent
+@code{layer} has the following attributes.
+
+@defvr {Required} variable
+The @code{id} of a @code{sourceVariable} or @code{derivedVariable}
+element.
+@end defvr
+
+@defvr {Required} value
+The value to select. For a category variable, this is always
+@code{0}; for a data variable, it is the same as the @code{variable}
+attribute.
+@end defvr
+
+@defvr {Optional} visible
+Whether the layer is visible. Generally, category layers are visible
+and data layers are not, but sometimes this attribute is omitted.
+@end defvr
+
+@defvr {Optional} method
+When present, this is always @code{nest}.
+@end defvr
+
+@node SPV Detail facetLayout Element
+@subsection The @code{facetLayout} Element
+
+Parent: @code{graph} @*
+Contents: @code{tableLayout} @code{facetLevel}@math{+} @code{setCellProperties}*
+
+@subsubheading The @code{tableLayout} Element
+
+Parent: @code{facetLayout} @*
+Contents: empty
+
+@defvr {Required} verticalTitlesInCorner
+Always set to @code{true}.
+@end defvr
+
+@defvr {Optional} style
+The @code{id} of a @code{style} element.
+@end defvr
+
+@defvr {Optional} fitCells
+Always set to @code{ticks}.
+@end defvr
+
+@subsubheading The @code{facetLevel} Element
+
+Parent: @code{facetLayout} @*
+Contents: @code{axis}
+
+Each @code{facetLevel} describes a @code{variableReference} or
+@code{layer}, and a table has one @code{facetLevel} element for
+each such element. For example, an SPV detail member that contains
+four @code{variableReference} elements and two @code{layer} elements
+will contain six @code{facetLevel} elements.
+
+In the corpus, @code{facetLevel} elements and the elements that they
+describe are always in the same order. The correspondence may also be
+observed in two other ways. First, one may use the @code{level}
+attribute, described below. Second, in the corpus, a
+@code{facetLevel} always has an @code{id} that is the same as the
+@code{id} of the element it describes with @code{_facetLevel}
+appended. One should not formally rely on this, of course, but it is
+usefully indicative.
+
+@defvr {Required} level
+A 1-based index into the @code{variableReference} and @code{layer}
+elements, e.g.@: a @code{facetLayout} with a @code{level} of 1
+describes the first @code{variableReference} in the SPV detail member,
+and in a member with four @code{variableReference} elements, a
+@code{facetLayout} with a @code{level} of 5 describes the first
+@code{layer} in the member.
+@end defvr
+
+@defvr {Required} gap
+Always observed as @code{0pt}.
+@end defvr
+
+@subsubheading The @code{axis} Element
+
+Parent: @code{facetLevel} @*
+Contents: @code{label}? @code{majorTicks}
+
+@defvr {Attribute} style
+The @code{id} of a @code{style} element.
+@end defvr
+
+@subsubheading The @code{label} Element
+
+Parent: @code{axis} or @code{labelFrame} @*
+Contents: @code{text}@math{+} @math{|} @code{descriptionGroup}
+
+This element represents a label on some aspect of the table. For example,
+the table's title is a @code{label}.
+
+The contents of the label can be one or more @code{text} elements or a
+@code{descriptionGroup}.
+
+@defvr {Attribute} style
+@defvrx {Optional} textFrameStyle
+Each of these is the @code{id} of a @code{style} element.
+@code{style} is the style of the label text, @code{textFrameStyle} the
+style for the frame around the label.
+@end defvr
+
+@defvr {Optional} purpose
+The kind of entity being labeled, one of @code{title},
+@code{subTitle}, @code{layer}, or @code{footnote}.
+@end defvr
+
+@subsubheading The @code{descriptionGroup} Element
+
+Parent: @code{label} @*
+Contents: (@code{description} @math{|} @code{text})@math{+}
+
+A @code{descriptionGroup} concatenates one or more elements to form a
+label. Each element can be a @code{text} element, which contains
+literal text, or a @code{description} element that substitutes a value
+or a variable name.
+
+@defvr {Attribute} target
+The @code{id} of an element being described. In the corpus, this is
+always @code{faceting}.
+@end defvr
+
+@defvr {Attribute} separator
+A string to separate the description of multiple groups, if the
+@code{target} has more than one. In the corpus, this is always a
+new-line.
+@end defvr
+
+Typical contents for a @code{descriptionGroup} are a value by itself:
+@example
+<description name="value"/>
+@end example
+@noindent or a variable and its value, separated by a colon:
+@example
+<description name="variable"/><text>:</text><description name="value"/>
+@end example
+
+@subsubheading The @code{description} Element
+
+Parent: @code{descriptionGroup} @*
+Contents: empty
+
+A @code{description} is like a macro that expands to some property of
+the target of its parent @code{descriptionGroup}.
+
+@defvr {Attribute} name
+The name of the property. Only @code{variable} and @code{value}
+appear in the corpus.
+@end defvr
+
+@subsubheading The @code{majorTicks} Element
+
+Parent: @code{axis} @*
+Contents: @code{gridline}?
+
+@defvr {Attribute} labelAngle
+@defvrx {Attribute} length
+Both always defined to @code{0}.
+@end defvr
+
+@defvr {Attribute} style
+@defvrx {Attribute} tickFrameStyle
+Each of these is the @code{id} of a @code{style} element.
+@code{style} is the style of the tick labels, @code{tickFrameStyle}
+the style for the frames around the labels.
+@end defvr
+
+@subsubheading The @code{gridline} Element
+
+Parent: @code{majorTicks} @*
+Contents: empty
+
+Represents ``gridlines,'' which for a table represents the lines
+between the rows or columns of a table (XXX?).
+
+@defvr {Attribute} style
+The style for the gridline.
+@end defvr
+
+@defvr {Attribute} zOrder
+Observed as a number between 28 and 31. Does not seem to be
+important.
+@end defvr
+
+@subsubheading The @code{setCellProperties} Element
+
+Parent: @code{facetLayout} @*
+Contents: @code{setMetaData} @code{setStyle}* @code{setFormat}@math{+} @code{union}?
+
+This element sets style properties of cells designated by the
+@code{target} attribute of its child elements, as further restricted
+by the optional @code{union} element if present. The @code{target}
+values often used, e.g.@: @code{graph} or @code{labeling}, actually
+affect every cell, so the @code{union} element is a useful
+restriction.
+
+@defvr {Optional} applyToConverse
+If present, always @code{true}. This appears to invert the meaning of
+the @code{target} of sub-elements: the selected cells are the ones
+@emph{not} designated by @code{target}. This is confusing, given the
+additional restrictions of @code{union}, but in the corpus
+@code{applyToConverse} is never present along with @code{union}.
+@end defvr
+
+@subsubheading The @code{setMetaData} Element
+
+Parent: @code{setCellProperties} @*
+Contents: empty
+
+This element is not known to have any visible effect.
+
+@defvr {Required} target
+The @code{id} of an element whose metadata is to be set. In the
+corpus, this is always @code{graph}, the @code{id} used for the
+@code{graph} element.
+@end defvr
+
+@defvr {Required} key
+@defvrx {Required} value
+A key-value pair to set for the target.
+
+In the corpus, @code{key} is @code{cellPropId} or, rarely,
+@code{diagProps}, and @code{value} is always the @code{id} of the
+parent @code{setCellProperties}.
+@end defvr
+
+@subsubheading The @code{setStyle} Element
+
+Parent: @code{setCellProperties} @*
+Contents: empty
+
+This element associates a style with the target.
+
+@defvr {Required} target
+The @code{id} of an element whose style is to be set. In the corpus,
+this is always the @code{id} of an @code{interval}, @code{labeling},
+or, rarely, @code{graph} element.
+@end defvr
+
+@defvr {Required} style
+The @code{id} of a @code{style} element that identifies the style to
+set on the target.
+@end defvr
+
+@subsubheading The @code{setFormat} Element
+
+@format
+Parent: @code{setCellProperties}
+Contents:
+ @code{format}
+ @math{|} @code{numberFormat}
+ @math{|} @code{stringFormat}@math{+}
+ @math{|} @code{dateTimeFormat}
+@end format
+
+This element sets the format of the target, ``format'' in this case
+meaning the SPSS print format for a variable.
+
+The details of this element vary depending on the schema version, as
+declared in the root @code{visualization} element's @code{version}
+attribute (@pxref{SPV Detail visualization Element}). In version 2.5
+and earlier, @code{setFormat} contains one of a number of child
+elements that correspond to the different varieties of print formats.
+In version 2.7 and later, @code{setFormat} instead always contains a
+@code{format} element.
+
+XXX reinvestigate the above claim about versions: it appears to be
+incorrect.
+
+The @code{setFormat} element itself has the following attributes.
+
+@defvr {Required} target
+The @code{id} of an element whose style is to be set. In the corpus,
+this is always the @code{id} of an @code{majorTicks} or
+@code{labeling} element.
+@end defvr
+
+@defvr {Optional} reset
+If this is @code{true}, this format overrides the target's previous
+format. If it is @code{false}, the adds to the previous format. In
+the corpus this is always @code{true}. The default behavior is
+unknown.
+@end defvr
+
+@menu
+* SPV Detail format Element::
+* SPV Detail numberFormat Element::
+* SPV Detail stringFormat Element::
+* SPV Detail dateTimeFormat Element::
+* SPV Detail affix Element::
+* SPV Detail relabel Element::
+* SPV Detail union Element::
+@end menu
+
+@node SPV Detail format Element
+@subsubsection The @code{format} Element
+
+Parent: @code{sourceVariable}, @code{derivedVariable}, @code{formatMapping}, @code{labeling}, @code{formatMapping}, @code{setFormat} @*
+Contents: (@code{affix}@math{+} @math{|} @code{relabel}@math{+})?
+
+This element appears only in schema version 2.7 (@pxref{SPV Detail
+visualization Element}).
+
+This element determines a format, equivalent to an SPSS print format.
+
+@subsubheading Attributes for All Formats
+
+These attributes apply to all kinds of formats. The most important of
+these attributes determines the high-level kind of formatting in use:
+
+@defvr {Optional} baseFormat
+Either @code{dateTime} or @code{elapsedTime}. When this attribute is
+omitted, this element is a numeric or string format.
+@end defvr
+
+@noindent
+Whether, in the corpus, other attributes are always present (``yes''),
+never present (``no''), or sometimes present (``opt'') depends on
+@code{baseFormat}:
+
+@multitable {maximumFractionDigits} {@code{dateTime}} {@code{elapsedTime}} {number} {string}
+@headitem Attribute @tab @code{dateTime} @tab @code{elapsedTime} @tab number @tab string
+@item errorCharacter @tab yes @tab yes @tab yes @tab opt
+@item @w{ }
+@item separatorChars @tab yes @tab no @tab no @tab no
+@item @w{ }
+@item mdyOrder @tab yes @tab no @tab no @tab no
+@item @w{ }
+@item showYear @tab yes @tab no @tab no @tab no
+@item yearAbbreviation @tab yes @tab no @tab no @tab no
+@item @w{ }
+@item showMonth @tab yes @tab no @tab no @tab no
+@item monthFormat @tab yes @tab no @tab no @tab no
+@item @w{ }
+@item showDay @tab yes @tab opt @tab no @tab no
+@item dayPadding @tab yes @tab opt @tab no @tab no
+@item dayOfMonthPadding @tab yes @tab no @tab no @tab no
+@item dayType @tab yes @tab no @tab no @tab no
+@item @w{ }
+@item showHour @tab yes @tab opt @tab no @tab no
+@item hourFormat @tab yes @tab opt @tab no @tab no
+@item hourPadding @tab yes @tab yes @tab no @tab no
+@item @w{ }
+@item showMinute @tab yes @tab yes @tab no @tab no
+@item minutePadding @tab yes @tab yes @tab no @tab no
+@item @w{ }
+@item showSecond @tab yes @tab yes @tab no @tab no
+@item secondPadding @tab no @tab yes @tab no @tab no
+@item @w{ }
+@item showMillis @tab no @tab yes @tab no @tab no
+@item @w{ }
+@item minimumIntegerDigits @tab no @tab no @tab yes @tab no
+@item maximumFractionDigits @tab no @tab yes @tab yes @tab no
+@item minimumFractionDigits @tab no @tab yes @tab yes @tab no
+@item useGrouping @tab no @tab opt @tab yes @tab no
+@item scientific @tab no @tab no @tab yes @tab no
+@item small @tab no @tab no @tab opt @tab no
+@item suffix @tab no @tab no @tab opt @tab no
+@item @w{ }
+@item tryStringsAsNumbers @tab no @tab no @tab no @tab yes
+@item @w{ }
+@end multitable
+
+@defvr {Attribute} errorCharacter
+A character that replaces the formatted value when it cannot otherwise
+be represented in the given format. Always @samp{*}.
+@end defvr
+
+@subsubheading Date and Time Attributes
+
+These attributes are used with @code{dateTime} and @code{elapsedTime}
+formats or both.
+
+@defvr {Attribute} separatorChars
+Exactly four characters. In order, these are used for: decimal point,
+grouping, date separator, time separator. Always @samp{.,-:}.
+@end defvr
+
+@defvr {Attribute} mdyOrder
+Within a date, the order of the days, months, and years.
+@code{dayMonthYear} is the only observed value, but one would expect
+that @code{monthDayYear} and @code{yearMonthDay} to be reasonable as
+well.
+@end defvr
+
+@defvr {Attribute} showYear
+@defvrx {Attribute} yearAbbreviation
+Whether to include the year and, if so, whether the year should be
+shown abbreviated, that is, with only 2 digits. Each is @code{true}
+or @code{false}; only values of @code{true} and @code{false},
+respectively, have been observed.
+@end defvr
+
+@defvr {Attribute} showMonth
+@defvrx {Attribute} monthFormat
+Whether to include the month (@code{true} or @code{false}) and, if so,
+how to format it. @code{monthFormat} is one of the following:
+
+@table @code
+@item long
+The full name of the month, e.g.@: in an English locale,
+@code{September}.
+
+@item short
+The abbreviated name of the month, e.g.@: in an English locale,
+@code{Sep}.
+
+@item number
+The number representing the month, e.g.@: 9 for September.
+
+@item paddedNumber
+A two-digit number representing the month, e.g.@: 09 for September.
+@end table
+
+Only values of @code{true} and @code{short}, respectively, have been
+observed.
+@end defvr
+
+@defvr {Attribute} dayPadding
+@defvrx {Attribute} dayOfMonthPadding
+@defvrx {Attribute} hourPadding
+@defvrx {Attribute} minutePadding
+@defvrx {Attribute} secondPadding
+These attributes presumably control whether each field in the output
+is padded with spaces to its maximum width, but the details are not
+understood. The only observed value for any of these attributes is
+@code{true}.
+@end defvr
+
+@defvr {Attribute} showDay
+@defvrx {Attribute} showHour
+@defvrx {Attribute} showMinute
+@defvrx {Attribute} showSecond
+@defvrx {Attribute} showMillis
+These attributes presumably control whether each field is displayed
+in the output, but the details are not understood. The only
+observed value for any of these attributes is @code{true}.
+@end defvr
+
+@defvr {Attribute} dayType
+This attribute is always @code{month} in the corpus, specifying that
+the day of the month is to be displayed; a value of @code{year} is
+supposed to indicate that the day of the year, where 1 is January 1,
+is to be displayed instead.
+@end defvr
+
+@defvr {Attribute} hourFormat
+@code{hourFormat}, if present, is one of:
+
+@table @code
+@item AMPM
+The time is displayed with an @code{am} or @code{pm} suffix, e.g.@:
+@code{10:15pm}.
+
+@item AS_24
+The time is displayed in a 24-hour format, e.g.@: @code{22:15}.
+
+This is the only value observed in the corpus.
+
+@item AS_12
+The time is displayed in a 12-hour format, without distinguishing
+morning or evening, e.g.@: @code{10;15}.
+@end table
+
+@code{hourFormat} is sometimes present for @code{elapsedTime} formats,
+which is confusing since a time duration does not have a concept of AM
+or PM. This might indicate a bug in the code that generated the XML
+in the corpus, or it might indicate that @code{elapsedTime} is
+sometimes used to format a time of day.
+@end defvr
+
+@subsubheading Numeric Attributes
+
+These attributes are used for formats when @code{baseFormat} is
+@code{number}. Attributes @code{maximumFractionDigits}, and
+@code{minimumFractionDigits}, and @code{useGrouping} are also used
+when @code{baseFormat} is @code{elapsedTime}.
+
+@defvr {Attribute} minimumIntegerDigits
+Minimum number of digits to display before the decimal point. Always
+observed as @code{0}.
+@end defvr
+
+@defvr {Attribute} maximumFractionDigits
+@defvrx {Attribute} maximumFractionDigits
+Maximum or minimum, respectively, number of digits to display after
+the decimal point. The observed values of each attribute range from 0
+to 9.
+@end defvr
+
+@defvr {Attribute} useGrouping
+Whether to use the grouping character to group digits in large
+numbers. It would make sense for the grouping character to come from
+the @code{separatorChars} attribute, but that attribute is only
+present when @code{baseFormat} is @code{dateTime} or
+@code{elapsedTime}, in the corpus at least. Perhaps that is because
+this attribute has only been observed as @code{false}.
+@end defvr
+
+@defvr {Attribute} scientific
+This attribute controls when and whether the number is formatted in
+scientific notation. It takes the following values:
+
+@table @code
+@item onlyForSmall
+Use scientific notation only when the number's magnitude is smaller
+than the value of the @code{small} attribute.
+
+@item whenNeeded
+Use scientific notation when the number will not otherwise fit in the
+available space.
+
+@item true
+Always use scientific notation. Not observed in the corpus.
+
+@item false
+Never use scientific notation. A number that won't otherwise fit will
+be replaced by an error indication (see the @code{errorCharacter}
+attribute). Not observed in the corpus.
+@end table
+@end defvr
+
+@defvr {Optional} small
+Only present when the @code{scientific} attribute is
+@code{onlyForSmall}, this is a numeric magnitude below which the
+number will be formatted in scientific notation. The values @code{0}
+and @code{0.0001} have been observed. The value @code{0} seems like a
+pathological choice, since no real number has a magnitude less than 0;
+perhaps in practice such a choice is equivalent to setting
+@code{scientific} to @code{false}.
+@end defvr
+
+@defvr {Optional} prefix
+@defvrx {Optional} suffix
+Specifies a prefix or a suffix to apply to the formatted number. Only
+@code{suffix} has been observed, with value @samp{%}.
+@end defvr
+
+@subsubheading String Attributes
+
+These attributes are used for formats when @code{baseFormat} is
+@code{string}.
+
+@defvr {Attribute} tryStringsAsNumbers
+When this is @code{true}, it is supposed to indicate that string
+values should be parsed as numbers and then displayed according to
+numeric formatting rules. However, in the corpus it is always
+@code{false}.
+@end defvr
+
+@node SPV Detail numberFormat Element
+@subsubsection The @code{numberFormat} Element
+
+Parent: @code{setFormat} @*
+Contents: @code{affix}@math{+}
+
+This element appears only in schema version 2.5 and earlier
+(@pxref{SPV Detail visualization Element}). Possibly this element
+could also contain @code{relabel} elements in a more diverse corpus.
+
+This element has the following attributes.
+
+@defvr {Attribute} maximumFractionDigits
+@defvrx {Attribute} minimumFractionDigits
+@defvrx {Attribute} minimumIntegerDigits
+@defvrx {Optional} scientific
+@defvrx {Optional} small
+@defvrx {Optional} suffix
+@defvrx {Optional} useGroupging
+The syntax and meaning of these attributes is the same as on the
+@code{format} element for a numeric format. @pxref{SPV Detail format
+Element}.
+@end defvr
+
+@node SPV Detail stringFormat Element
+@subsubsection The @code{stringFormat} Element
+
+Parent: @code{setFormat} @*
+Contents: (@code{affix}@math{+} @math{|} @code{relabel}@math{+})?
+
+This element appears only in schema version 2.5 and earlier
+(@pxref{SPV Detail visualization Element}).
+
+This element has no attributes.
+
+@node SPV Detail dateTimeFormat Element
+@subsubsection The @code{dateTimeFormat} Element
+
+Parent: @code{setFormat} @*
+Contents: empty
+
+This element appears only in schema version 2.5 and earlier
+(@pxref{SPV Detail visualization Element}). Possibly this element
+could also contain @code{affix} and @code{relabel} elements in a more
+diverse corpus.
+
+The following attribute is required.
+
+@defvr {Attribute} baseFormat
+Either @code{dateTime} or @code{time}.
+@end defvr
+
+When @code{baseFormat} is @code{dateTime}, the following attributes
+are available.
+
+@defvr {Attribute} dayOfMonthPadding
+@defvrx {Attribute} dayPadding
+@defvrx {Attribute} dayType
+@defvrx {Attribute} hourFormat
+@defvrx {Attribute} hourPadding
+@defvrx {Attribute} mdyOrder
+@defvrx {Attribute} minutePadding
+@defvrx {Attribute} monthFormat
+@defvrx {Attribute} separatorChars
+@defvrx {Attribute} showDay
+@defvrx {Attribute} showHour
+@defvrx {Attribute} showMinute
+@defvrx {Attribute} showMonth
+@defvrx {Attribute} showSecond
+@defvrx {Attribute} showYear
+@defvrx {Attribute} yearAbbreviation
+The syntax and meaning of these attributes is the same as on the
+@code{format} element when that element's @code{baseFormat} is
+@code{dateTime}. @pxref{SPV Detail format Element}.
+@end defvr
+
+When @code{baseFormat} is @code{time}, the following attributes are
+available.
+
+@defvr {Attribute} hourFormat
+@defvrx {Attribute} hourPadding
+@defvrx {Attribute} minutePadding
+@defvrx {Attribute} monthFormat
+@defvrx {Attribute} separatorChars
+@defvrx {Attribute} showDay
+@defvrx {Attribute} showHour
+@defvrx {Attribute} showMinute
+@defvrx {Attribute} showMonth
+@defvrx {Attribute} showSecond
+@defvrx {Attribute} showYear
+@defvrx {Attribute} yearAbbreviation
+The syntax and meaning of these attributes is the same as on the
+@code{format} element when that element's @code{baseFormat} is
+@code{elapsedTime}. @pxref{SPV Detail format Element}.
+@end defvr
+
+@node SPV Detail affix Element
+@subsubsection The @code{affix} Element
+
+Parent: @code{format} or @code{numberFormat} or @code{stringFormat} @*
+Contents: empty
+
+Possibly this element could have @code{dateTimeFormat} as a parent in
+a more diverse corpus.
+
+This defines a suffix (or, theoretically, a prefix) for a formatted
+value. It is used to insert a reference to a footnote. It has the
+following attributes:
+
+@defvr {Attribute} definesReference
+This specifies the footnote number as a natural number: 1 for the
+first footnote, 2 for the second, and so on.
+@end defvr
+
+@defvr {Attribute} position
+Position for the footnote label. Always @code{superscript}.
+@end defvr
+
+@defvr {Attribute} suffix
+Whether the affix is a suffix (@code{true}) or a prefix
+(@code{false}). Always @code{true}.
+@end defvr
+
+@defvr {Attribute} value
+The text of the suffix or prefix. Typically a letter, e.g.@: @code{a}
+for footnote 1, @code{b} for footnote 2, @enddots{} The corpus
+contains other values: @code{*}, @code{**}, and a few that begin with
+at least one comma: @code{,b}, @code{,c}, @code{,,b}, and @code{,,c}.
+@end defvr
+
+@node SPV Detail relabel Element
+@subsubsection The @code{relabel} Element
+
+Parent: @code{format} or @code{stringFormat} @*
+Contents: empty
+
+Possibly this element could have @code{numberFormat} or
+@code{dateTimeFormat} as a parent in a more diverse corpus.
+
+This specifies how to display a given value. It is used to implement
+value labels and to display the system-missing value in a
+human-readable way. It has the following attributes:
+
+@defvr {Attribute} from
+The value to map. In the corpus this is an integer or the
+system-missing value @code{-1.797693134862316E300}.
+@end defvr
+
+@defvr {Attribute} to
+The string to display in place of the value of @code{from}. In the
+corpus this is a wide variety of value labels; the system-missing
+value is mapped to @samp{.}.
+@end defvr
+
+@node SPV Detail union Element
+@subsubsection The @code{union} Element
+
+Parent: @code{setCellProperties} @*
+Contents: @code{intersect}@math{+}
+
+This element represents a set of cells, computed as the union of the
+sets represented by each of its children.
+
+@subsubheading The @code{intersect} Element
+
+Parent: @code{union} @*
+Contents: @code{where}@math{+} @math{|} @code{intersectWhere}?
+
+This element represents a set of cells, computed as the intersection
+of the sets represented by each of its children.
+
+Of the two possible children, in the corpus @code{where} is far more
+common, appearing thousands of times, whereas @code{intersectWhere}
+only appears 4 times.
+
+Most @code{intersect} elements have two or more children.
+
+@subsubheading The @code{where} Element
+
+Parent: @code{intersect} @*
+Contents: empty
+
+This element represents the set of cells in which the value of a
+specified variable falls within a specified set.
+
+@defvr {Attribute} variable
+The @code{id} of a variable, e.g.@: @code{dimension0categories} or
+@code{dimension0group0map}.
+@end defvr
+
+@defvr {Attribute} include
+A value, or multiple values separated by semicolons,
+e.g.@: @code{0} or @code{13;14;15;16}.
+@end defvr
+
+@subsubheading The @code{intersectWhere} Element
+
+Parent: @code{intersect} @*
+Contents: empty
+
+The meaning of this element is unknown.
+
+@defvr {Attribute} variable
+@defvrx {Attribute} variable2
+The meaning of these attributes is unknown. In the four examples in
+the corpus they always take the values @code{dimension2categories} and
+@code{dimension0categories}, respectively.
+@end defvr
+
+@node SPV Detail style Element
+@subsection The @code{style} Element
+
+TBD.
+++ /dev/null
-%!PS-Adobe-3.0 EPSF-3.0
-%%Creator: graphviz version 2.38.0 (20140413.2041)
-%%Title: spv_structure
-%%Pages: 1
-%%BoundingBox: 36 36 517 487
-%%EndComments
-save
-%%BeginProlog
-/DotDict 200 dict def
-DotDict begin
-
-/setupLatin1 {
-mark
-/EncodingVector 256 array def
- EncodingVector 0
-
-ISOLatin1Encoding 0 255 getinterval putinterval
-EncodingVector 45 /hyphen put
-
-% Set up ISO Latin 1 character encoding
-/starnetISO {
- dup dup findfont dup length dict begin
- { 1 index /FID ne { def }{ pop pop } ifelse
- } forall
- /Encoding EncodingVector def
- currentdict end definefont
-} def
-/Times-Roman starnetISO def
-/Times-Italic starnetISO def
-/Times-Bold starnetISO def
-/Times-BoldItalic starnetISO def
-/Helvetica starnetISO def
-/Helvetica-Oblique starnetISO def
-/Helvetica-Bold starnetISO def
-/Helvetica-BoldOblique starnetISO def
-/Courier starnetISO def
-/Courier-Oblique starnetISO def
-/Courier-Bold starnetISO def
-/Courier-BoldOblique starnetISO def
-cleartomark
-} bind def
-
-%%BeginResource: procset graphviz 0 0
-/coord-font-family /Times-Roman def
-/default-font-family /Times-Roman def
-/coordfont coord-font-family findfont 8 scalefont def
-
-/InvScaleFactor 1.0 def
-/set_scale {
- dup 1 exch div /InvScaleFactor exch def
- scale
-} bind def
-
-% styles
-/solid { [] 0 setdash } bind def
-/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def
-/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def
-/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def
-/bold { 2 setlinewidth } bind def
-/filled { } bind def
-/unfilled { } bind def
-/rounded { } bind def
-/diagonals { } bind def
-/tapered { } bind def
-
-% hooks for setting color
-/nodecolor { sethsbcolor } bind def
-/edgecolor { sethsbcolor } bind def
-/graphcolor { sethsbcolor } bind def
-/nopcolor {pop pop pop} bind def
-
-/beginpage { % i j npages
- /npages exch def
- /j exch def
- /i exch def
- /str 10 string def
- npages 1 gt {
- gsave
- coordfont setfont
- 0 0 moveto
- (\() show i str cvs show (,) show j str cvs show (\)) show
- grestore
- } if
-} bind def
-
-/set_font {
- findfont exch
- scalefont setfont
-} def
-
-% draw text fitted to its expected width
-/alignedtext { % width text
- /text exch def
- /width exch def
- gsave
- width 0 gt {
- [] 0 setdash
- text stringwidth pop width exch sub text length div 0 text ashow
- } if
- grestore
-} def
-
-/boxprim { % xcorner ycorner xsize ysize
- 4 2 roll
- moveto
- 2 copy
- exch 0 rlineto
- 0 exch rlineto
- pop neg 0 rlineto
- closepath
-} bind def
-
-/ellipse_path {
- /ry exch def
- /rx exch def
- /y exch def
- /x exch def
- matrix currentmatrix
- newpath
- x y translate
- rx ry scale
- 0 0 1 0 360 arc
- setmatrix
-} bind def
-
-/endpage { showpage } bind def
-/showpage { } def
-
-/layercolorseq
- [ % layer color sequence - darkest to lightest
- [0 0 0]
- [.2 .8 .8]
- [.4 .8 .8]
- [.6 .8 .8]
- [.8 .8 .8]
- ]
-def
-
-/layerlen layercolorseq length def
-
-/setlayer {/maxlayer exch def /curlayer exch def
- layercolorseq curlayer 1 sub layerlen mod get
- aload pop sethsbcolor
- /nodecolor {nopcolor} def
- /edgecolor {nopcolor} def
- /graphcolor {nopcolor} def
-} bind def
-
-/onlayer { curlayer ne {invis} if } def
-
-/onlayers {
- /myupper exch def
- /mylower exch def
- curlayer mylower lt
- curlayer myupper gt
- or
- {invis} if
-} def
-
-/curlayer 0 def
-
-%%EndResource
-%%EndProlog
-%%BeginSetup
-14 default-font-family set_font
-1 setmiterlimit
-% /arrowlength 10 def
-% /arrowwidth 5 def
-
-% make sure pdfmark is harmless for PS-interpreters other than Distiller
-/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse
-% make '<<' and '>>' safe on PS Level 1 devices
-/languagelevel where {pop languagelevel}{1} ifelse
-2 lt {
- userdict (<<) cvn ([) cvn load put
- userdict (>>) cvn ([) cvn load put
-} if
-
-%%EndSetup
-setupLatin1
-%%Page: 1 1
-%%PageBoundingBox: 36 36 517 487
-%%PageOrientation: Portrait
-0 0 1 beginpage
-gsave
-36 36 481 451 boxprim clip newpath
-1 1 set_scale 0 rotate 40 40 translate
-% heading
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-253.65 425 38.19 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-232.15 421.3 moveto 43 (heading) alignedtext
-grestore
-% heading->heading
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 288.31 432.87 moveto
-300.31 432.96 309.99 430.33 309.99 425 curveto
-309.99 421.33 305.41 418.95 298.65 417.84 curveto
-stroke
-0 0 0 edgecolor
-newpath 298.53 414.33 moveto
-288.31 417.13 lineto
-298.04 421.31 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 298.53 414.33 moveto
-288.31 417.13 lineto
-298.04 421.31 lineto
-closepath stroke
-0 0 0 edgecolor
-14 /Times-Roman set_font
-309.99 421.3 moveto 7 (*) alignedtext
-grestore
-% pageSetup
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-173.65 338 47.39 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-145.15 334.3 moveto 57 (pageSetup) alignedtext
-grestore
-% heading->pageSetup
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 238.6 408.01 moveto
-226.61 395.27 209.63 377.24 196.04 362.8 curveto
-stroke
-0 0 0 edgecolor
-newpath 198.3 360.09 moveto
-188.9 355.21 lineto
-193.2 364.89 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 198.3 360.09 moveto
-188.9 355.21 lineto
-193.2 364.89 lineto
-closepath stroke
-0 0 0 edgecolor
-14 /Times-Roman set_font
-218.65 377.8 moveto 7 (?) alignedtext
-grestore
-% label
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-269.65 251 27.9 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-256.15 247.3 moveto 27 (label) alignedtext
-grestore
-% heading->label
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 255.24 406.88 moveto
-258.02 377 263.77 315.11 267.11 279.27 curveto
-stroke
-0 0 0 edgecolor
-newpath 270.62 279.33 moveto
-268.06 269.05 lineto
-263.65 278.68 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 270.62 279.33 moveto
-268.06 269.05 lineto
-263.65 278.68 lineto
-closepath stroke
-grestore
-% container
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-325.65 338 43.59 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-300.15 334.3 moveto 51 (container) alignedtext
-grestore
-% heading->container
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 267.19 408.01 moveto
-277.88 395.39 292.97 377.57 305.15 363.2 curveto
-stroke
-0 0 0 edgecolor
-newpath 308.13 365.1 moveto
-311.92 355.21 lineto
-302.78 360.57 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 308.13 365.1 moveto
-311.92 355.21 lineto
-302.78 360.57 lineto
-closepath stroke
-0 0 0 edgecolor
-14 /Times-Roman set_font
-293.65 377.8 moveto 7 (*) alignedtext
-grestore
-% pageHeader
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-52.65 251 52.79 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-20.15 247.3 moveto 65 (pageHeader) alignedtext
-grestore
-% pageSetup->pageHeader
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 152.01 321.8 moveto
-132.89 308.37 104.8 288.63 83.35 273.57 curveto
-stroke
-0 0 0 edgecolor
-newpath 85.1 270.52 moveto
-74.91 267.64 lineto
-81.08 276.25 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 85.1 270.52 moveto
-74.91 267.64 lineto
-81.08 276.25 lineto
-closepath stroke
-grestore
-% pageFooter
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-173.65 251 50.09 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-143.15 247.3 moveto 61 (pageFooter) alignedtext
-grestore
-% pageSetup->pageFooter
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 173.65 319.8 moveto
-173.65 308.16 173.65 292.55 173.65 279.24 curveto
-stroke
-0 0 0 edgecolor
-newpath 177.15 279.18 moveto
-173.65 269.18 lineto
-170.15 279.18 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 177.15 279.18 moveto
-173.65 269.18 lineto
-170.15 279.18 lineto
-closepath stroke
-grestore
-% container->label
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 314.58 320.21 moveto
-306.37 307.74 295.05 290.56 285.82 276.56 curveto
-stroke
-0 0 0 edgecolor
-newpath 288.54 274.32 moveto
-280.12 267.9 lineto
-282.7 278.17 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 288.54 274.32 moveto
-280.12 267.9 lineto
-282.7 278.17 lineto
-closepath stroke
-grestore
-% table
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-397.65 251 27.9 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-384.15 247.3 moveto 27 (table) alignedtext
-grestore
-% container->table
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 339.53 320.61 moveto
-350.46 307.71 365.83 289.56 378.02 275.17 curveto
-stroke
-0 0 0 edgecolor
-newpath 380.98 277.09 moveto
-384.77 267.2 lineto
-375.64 272.56 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 380.98 277.09 moveto
-384.77 267.2 lineto
-375.64 272.56 lineto
-closepath stroke
-0 0 0 edgecolor
-14 /Times-Roman set_font
-365.65 290.8 moveto 7 (*) alignedtext
-grestore
-% text
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-281.65 91 27 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-271.15 87.3 moveto 21 (text) alignedtext
-grestore
-% container->text
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 322.55 319.77 moveto
-315.01 277.78 295.63 169.86 286.52 119.12 curveto
-stroke
-0 0 0 edgecolor
-newpath 289.95 118.43 moveto
-284.74 109.21 lineto
-283.06 119.67 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 289.95 118.43 moveto
-284.74 109.21 lineto
-283.06 119.67 lineto
-closepath stroke
-0 0 0 edgecolor
-14 /Times-Roman set_font
-302.65 203.8 moveto 7 (*) alignedtext
-grestore
-% tableStructure
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-413.65 164 59.59 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-375.65 160.3 moveto 76 (tableStructure) alignedtext
-grestore
-% table->tableStructure
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 400.88 232.8 moveto
-403.07 221.16 406.01 205.55 408.52 192.24 curveto
-stroke
-0 0 0 edgecolor
-newpath 412 192.65 moveto
-410.41 182.18 lineto
-405.12 191.36 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 412 192.65 moveto
-410.41 182.18 lineto
-405.12 191.36 lineto
-closepath stroke
-grestore
-% html
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-281.65 18 27.1 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-268.65 14.3 moveto 26 (html) alignedtext
-grestore
-% text->html
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 281.65 72.81 moveto
-281.65 64.79 281.65 55.05 281.65 46.07 curveto
-stroke
-0 0 0 edgecolor
-newpath 285.15 46.03 moveto
-281.65 36.03 lineto
-278.15 46.03 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 285.15 46.03 moveto
-281.65 36.03 lineto
-278.15 46.03 lineto
-closepath stroke
-grestore
-% dataPath
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-413.65 91 40.89 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-390.15 87.3 moveto 47 (dataPath) alignedtext
-grestore
-% tableStructure->dataPath
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 413.65 145.81 moveto
-413.65 137.79 413.65 128.05 413.65 119.07 curveto
-stroke
-0 0 0 edgecolor
-newpath 417.15 119.03 moveto
-413.65 109.03 lineto
-410.15 119.03 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 417.15 119.03 moveto
-413.65 109.03 lineto
-410.15 119.03 lineto
-closepath stroke
-grestore
-% pageParagraph
-gsave
-1 setlinewidth
-0 0 0 nodecolor
-173.65 164 63.09 18 ellipse_path stroke
-0 0 0 nodecolor
-14 /Times-Roman set_font
-133.15 160.3 moveto 81 (pageParagraph) alignedtext
-grestore
-% pageHeader->pageParagraph
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 74.56 234.61 moveto
-93.59 221.24 121.37 201.72 142.68 186.75 curveto
-stroke
-0 0 0 edgecolor
-newpath 144.9 189.47 moveto
-151.08 180.85 lineto
-140.88 183.74 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 144.9 189.47 moveto
-151.08 180.85 lineto
-140.88 183.74 lineto
-closepath stroke
-0 0 0 edgecolor
-14 /Times-Roman set_font
-120.65 203.8 moveto 7 (*) alignedtext
-grestore
-% pageFooter->pageParagraph
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 173.65 232.8 moveto
-173.65 221.16 173.65 205.55 173.65 192.24 curveto
-stroke
-0 0 0 edgecolor
-newpath 177.15 192.18 moveto
-173.65 182.18 lineto
-170.15 192.18 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 177.15 192.18 moveto
-173.65 182.18 lineto
-170.15 192.18 lineto
-closepath stroke
-0 0 0 edgecolor
-14 /Times-Roman set_font
-173.65 203.8 moveto 7 (*) alignedtext
-grestore
-% pageParagraph->text
-gsave
-1 setlinewidth
-0 0 0 edgecolor
-newpath 197.61 147.24 moveto
-214.44 136.18 236.98 121.37 254.47 109.86 curveto
-stroke
-0 0 0 edgecolor
-newpath 256.67 112.61 moveto
-263.11 104.19 lineto
-252.83 106.76 lineto
-closepath fill
-1 setlinewidth
-solid
-0 0 0 edgecolor
-newpath 256.67 112.61 moveto
-263.11 104.19 lineto
-252.83 106.76 lineto
-closepath stroke
-grestore
-endpage
-showpage
-grestore
-%%PageTrailer
-%%EndPage: 1
-%%Trailer
-end
-restore
-%%EOF
+++ /dev/null
-digraph spv_structure {
- "heading" -> "pageSetup" [label="?"];
- "heading" -> "label";
- "heading" -> "container" [label="*"];
- "heading" -> "heading" [label="*"];
-
- "container" -> "label";
- "container" -> "table" [label="*"];
- "container" -> "text" [label="*"];
-
- "text" -> "html";
-
- "table" -> "tableStructure";
-
- "tableStructure" -> "dataPath";
-
- "pageSetup" -> "pageHeader";
- "pageSetup" -> "pageFooter";
-
- "pageHeader" -> "pageParagraph" [label="*"];
-
- "pageFooter" -> "pageParagraph" [label="*"];
-
- "pageParagraph" -> "text";
-}
would be longer than 60 characters; otherwise it is padded on the right
with spaces.
+The product name field allow readers to behave differently based on
+quirks in the way that particular software writes system files.
+@xref{Value Labels Records}, for the detail of the quirk that the PSPP
+system file reader tolerates in files written by ReadStat, which has
+@code{https://github.com/WizardMac/ReadStat} in @code{prod_name}.
+
@anchor{layout_code}
@item int32 layout_code;
Normally set to 2, although a few system files have been spotted in
Number of data elements per case. This is the number of variables,
except that long string variables add extra data elements (one for every
8 characters after the first 8). However, string variables do not
-contribute to this value beyond the first 255 bytes. Further, system
-files written by some systems set this value to -1. In general, it is
+contribute to this value beyond the first 255 bytes. Further, some
+software always writes -1 or 0 in this field. In general, it is
unsafe for systems reading system files to rely upon this value.
@item int32 compression;
have value labels, but their value labels are recorded using a
different record type (@pxref{Long String Value Labels Record}).
+ReadStat (@pxref{File Header Record}) writes value labels that label a
+single value more than once. In more detail, it emits value labels
+whose values are longer than string variables' widths, that are
+identical in the actual width of the variable, e.g.@: labels for
+values @code{ABC123} and @code{ABC456} for a string variable with
+width 3. For files written by this software, PSPP ignores such
+labels.
+
The value label record has the following format:
@example
Record type. Always set to 6.
@item int32 n_lines;
-Number of lines of documents present.
+Number of lines of documents present. This should be greater than
+zero, but ReadStats writes system files with zero @code{n_lines}.
@item char lines[][80];
Document lines. The number of elements is defined by @code{n_lines}.
variable @code{bias} from the file header. For example,
code 105 with bias 100.0 (the normal value) indicates a numeric variable
of value 5.
-One file has been seen written by SPSS 14 that contained such a code
-in a @emph{string} field with the value 0 (after the bias is
-subtracted) as a way of encoding null bytes.
+
+A code of 0 (after subtracting the bias) in a string field encodes
+null bytes. This is unusual, since a string field normally encodes
+text data, but it exists in real system files.
@item 252
End of file. This code may or may not appear at the end of the data
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@c Use @func when refering to a function.
@c Use @deftypefn for their definitions
@macro func{NAME}
are converted to system-missing values.
@deftypefn {Function} {} MISSING (@var{expr})
-Returns 1 if @var{expr} has the system-missing value, 0 otherwise.
+When @var{expr} is simply the name of a numeric variable, returns 1 if
+the variable has the system-missing value or if it is user-missing.
+For any other value 0 is returned.
+If @var{expr} takes another form, the function returns 1 if the value is
+system-missing, 0 otherwise.
@end deftypefn
@deftypefn {Function} {} NMISS (@var{expr} [, @var{expr}]@dots{})
@end deftypefn
@deftypefn {Function} {} SYSMIS (@var{expr})
-When @var{expr} is simply the name of a numeric variable, returns 1 if
-the variable has the system-missing value, 0 if it is user-missing or
-not missing. If given @var{expr} takes another form, results in 1 if
-the value is system-missing, 0 otherwise.
+Returns 1 if @var{expr} has the system-missing value, 0 otherwise.
@end deftypefn
@deftypefn {Function} {} VALUE (@var{variable})
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node GNU Free Documentation License
@appendix GNU Free Documentation License
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node System and Portable File IO
@chapter System and Portable File I/O
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Conditionals and Looping
@chapter Conditional and Looping Constructs
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Function Index
@chapter Function Index
@printindex fn
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Installation
@appendix Installing @pspp{}
@cindex installation
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Introduction
@chapter Introduction
@cindex introduction
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Invoking PSPP
@chapter Invoking @command{pspp}
@cindex invocation
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Language
@chapter The @pspp{} language
@cindex language, @pspp{}
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node License
@chapter Your rights and obligations
@cindex license
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Not Implemented
@chapter Not Implemented
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Invoking pspp-convert
@chapter Invoking @command{pspp-convert}
@cindex Invocation
\input texinfo @c -*- texinfo -*-
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+
@c %**start of header
@setfilename pspp-dev.info
@settitle PSPP
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Invoking pspp-dump-sav
@chapter Invoking @command{pspp-dump-sav}
@cindex Invocation
\input texinfo @c -*- texinfo -*-
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+
@c %**start of header
@setfilename pspp.info
@settitle PSPP
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node REGRESSION
@section REGRESSION
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Statistics
@chapter Statistics
[ /ROTATION=@{VARIMAX, EQUAMAX, QUARTIMAX, PROMAX[(@var{k})], NOROTATE@}]
- [ /PRINT=[INITIAL] [EXTRACTION] [ROTATION] [UNIVARIATE] [CORRELATION] [COVARIANCE] [DET] [KMO] [SIG] [ALL] [DEFAULT] ]
+ [ /PRINT=[INITIAL] [EXTRACTION] [ROTATION] [UNIVARIATE] [CORRELATION] [COVARIANCE] [DET] [KMO] [AIC] [SIG] [ALL] [DEFAULT] ]
[ /PLOT=[EIGEN] ]
If specified, @subcmd{MATRIX IN} must be followed by @samp{COV} or @samp{CORR},
then by @samp{=} and @var{file_spec} all in parentheses.
@var{file_spec} may either be an asterisk, which indicates the currently loaded
-dataset, or it may be a filename to be loaded. @xref{MATRIX DATA} for the expected
+dataset, or it may be a filename to be loaded. @xref{MATRIX DATA}, for the expected
format of the file.
The @subcmd{/EXTRACTION} subcommand is used to specify the way in which factors (components) are extracted from the data.
The covariance matrix is printed.
@item @subcmd{DET}
The determinant of the correlation or covariance matrix is printed.
+@item @subcmd{AIC}
+ The anti-image covariance and anti-image correlation matrices are printed.
@item @subcmd{KMO}
The Kaiser-Meyer-Olkin measure of sampling adequacy and the Bartlett test of sphericity is printed.
@item @subcmd{SIG}
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Data Manipulation
@chapter Data transformations
@cindex transformations
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@alias prompt = sansserif
@include tut.texi
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Utilities
@chapter Utilities
+@c PSPP - a program for statistical analysis.
+@c Copyright (C) 2017 Free Software Foundation, Inc.
+@c Permission is granted to copy, distribute and/or modify this document
+@c under the terms of the GNU Free Documentation License, Version 1.3
+@c or any later version published by the Free Software Foundation;
+@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+@c A copy of the license is included in the section entitled "GNU
+@c Free Documentation License".
+@c
@node Variable Attributes
@chapter Manipulating variables
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
module_LTLIBRARIES = libglade-psppire.la
<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<glade-catalog name="psppire" library="glade-psppire">
<glade-widget-classes>
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
include $(top_srcdir)/lib/linreg/automake.mk
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
noinst_LTLIBRARIES += lib/linreg/liblinreg.la
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
noinst_LTLIBRARIES += lib/tukey/libtukey.la
02110-1301, USA. */
+#undef VERSION
#include <config.h>
/* The Gnulib "strftime" module defines my_strftime in <config.h> for use by
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
# PSPP
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#if 0
<<'SKIP';
#endif
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
include $(top_srcdir)/po/Makevars
XGETTEXT=xgettext
# Bob Earl <Bob.Earl@gmx.net>, 2014 -
msgid ""
msgstr ""
-"Project-Id-Version: pspp 0.10.2\n"
+"Project-Id-Version: pspp 0.10.5pre1\n"
"Report-Msgid-Bugs-To: pspp-dev@gnu.org\n"
"POT-Creation-Date: 2015-06-19 20:56-0700\n"
-"PO-Revision-Date: 2016-11-09 17:19+0100\n"
+"PO-Revision-Date: 2017-06-14 09:54+0200\n"
"Last-Translator: Bob Earl <Bob.Earl@gmx.net>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de_DE\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Generator: Poedit 1.8.11\n"
-#: src/ui/gui/helper.c:203
+#: src/ui/gui/helper.c:210
msgid "Sorry. The help system hasn't yet been implemented."
msgstr "Entschuldigung. Das Hilfesystem wurde noch nicht implementiert."
msgid "Numeric"
msgstr "Numerisch"
-#: src/data/format.c:416 src/data/sys-file-reader.c:2196
-#: src/data/sys-file-reader.c:2198 src/language/xforms/recode.c:512
+#: src/data/format.c:416 src/data/sys-file-reader.c:2195
+#: src/data/sys-file-reader.c:2197 src/language/xforms/recode.c:512
#: src/language/xforms/recode.c:513 src/language/xforms/recode.c:525
#: src/language/xforms/recode.c:526
#: src/language/dictionary/apply-dictionary.c:77
msgid "numeric"
msgstr "numerisch"
-#: src/data/format.c:416 src/data/sys-file-reader.c:2196
-#: src/data/sys-file-reader.c:2198 src/language/xforms/recode.c:512
+#: src/data/format.c:416 src/data/sys-file-reader.c:2195
+#: src/data/sys-file-reader.c:2197 src/language/xforms/recode.c:512
#: src/language/xforms/recode.c:513 src/language/xforms/recode.c:525
#: src/language/xforms/recode.c:526
#: src/language/dictionary/apply-dictionary.c:77
msgid "Remove"
msgstr "Löschen"
-#: src/ui/gui/psppire-buttonbox.c:326
+#: src/ui/gui/psppire-buttonbox.c:322
msgid "OK"
msgstr "OK"
-#: src/ui/gui/psppire-buttonbox.c:334
+#: src/ui/gui/psppire-buttonbox.c:330
msgid "Go To"
msgstr "Gehe zu"
-#: src/ui/gui/psppire-buttonbox.c:342
+#: src/ui/gui/psppire-buttonbox.c:338
msgid "Continue"
msgstr "Weiter"
-#: src/ui/gui/psppire-buttonbox.c:354
+#: src/ui/gui/psppire-buttonbox.c:350
#: src/ui/gui/psppire-import-assistant.c:938
msgid "Paste"
msgstr "Einfügen"
-#: src/ui/gui/psppire-buttonbox.c:360 src/ui/gui/psppire-data-window.c:490
-#: src/ui/gui/psppire-data-window.c:618
+#: src/ui/gui/psppire-buttonbox.c:356 src/ui/gui/psppire-data-window.c:533
+#: src/ui/gui/psppire-data-window.c:661
#: src/ui/gui/psppire-dialog-action-aggregate.c:216
-#: src/ui/gui/psppire-output-window.c:356
-#: src/ui/gui/psppire-syntax-window.c:568 src/ui/gui/psppire-window.c:473
-#: src/ui/gui/psppire-window.c:652
+#: src/ui/gui/psppire-output-window.c:381
+#: src/ui/gui/psppire-syntax-window.c:559 src/ui/gui/psppire-window.c:472
+#: src/ui/gui/psppire-window.c:651
msgid "Cancel"
msgstr "Abbrechen"
-#: src/ui/gui/psppire-buttonbox.c:366
+#: src/ui/gui/psppire-buttonbox.c:362
msgid "Close"
msgstr "Schließen"
-#: src/ui/gui/psppire-buttonbox.c:373
+#: src/ui/gui/psppire-buttonbox.c:369
#: src/ui/gui/psppire-import-assistant.c:939
msgid "Reset"
msgstr "Zurücksetzen"
-#: src/ui/gui/psppire-buttonbox.c:380
+#: src/ui/gui/psppire-buttonbox.c:376
msgid "Help"
msgstr "Hilfe"
-#: src/ui/gui/psppire-dictview.c:545 src/language/dictionary/split-file.c:82
+#: src/ui/gui/psppire-dictview.c:603 src/language/dictionary/split-file.c:82
#: src/language/dictionary/sys-file-info.c:240
#: src/language/dictionary/sys-file-info.c:440
#: src/language/dictionary/sys-file-info.c:738
-#: src/language/stats/descriptives.c:1019
-#: src/language/data-io/data-parser.c:654
-#: src/language/data-io/data-parser.c:693 src/language/data-io/print.c:446
-#: src/ui/gui/psppire-var-sheet.c:1249
+#: src/language/stats/descriptives.c:1027
+#: src/language/data-io/data-parser.c:672
+#: src/language/data-io/data-parser.c:711 src/language/data-io/print.c:446
+#: src/ui/gui/psppire-var-sheet.c:1243
msgid "Variable"
msgstr "Variable"
-#: src/ui/gui/psppire-dictview.c:583
+#: src/ui/gui/psppire-dictview.c:640
msgid "Prefer variable labels"
msgstr "Variablenlabel verwenden"
-#: src/ui/gui/psppire-dictview.c:596
+#: src/ui/gui/psppire-dictview.c:654
+msgid "Default sort order"
+msgstr "Voreingestellte Sortierung"
+
+#: src/ui/gui/psppire-dictview.c:660
msgid "Unsorted (dictionary order)"
msgstr "Unsortiert (Codebuch)"
-#: src/ui/gui/psppire-dictview.c:602
+#: src/ui/gui/psppire-dictview.c:665
msgid "Sort by name"
msgstr "Sortieren nach Name"
-#: src/ui/gui/psppire-dictview.c:607
+#: src/ui/gui/psppire-dictview.c:670
msgid "Sort by label"
msgstr "Sortieren nach Label"
msgid "An I/O error occurred writing CSV file `%s'."
msgstr "Ein I/O Fehler ist beim Schreiben von CSV Datei `%s' aufgetreten."
-#: src/data/data-in.c:171
+#: src/data/data-in.c:175
#, c-format
msgid "Data is not valid as format %s: %s"
msgstr "Daten sind nicht als Format %s gültig: %s"
-#: src/data/data-in.c:373 src/data/data-in.c:549
+#: src/data/data-in.c:377 src/data/data-in.c:553
msgid "Field contents are not numeric."
msgstr "Feldinhalte sind nicht numerisch."
-#: src/data/data-in.c:375 src/data/data-in.c:551
+#: src/data/data-in.c:379 src/data/data-in.c:555
msgid "Number followed by garbage."
msgstr "Zahl gefolgt von Müll."
-#: src/data/data-in.c:388
+#: src/data/data-in.c:392
msgid "Invalid numeric syntax."
msgstr "Ungültige numerische Syntax."
-#: src/data/data-in.c:396 src/data/data-in.c:567
+#: src/data/data-in.c:400 src/data/data-in.c:571
msgid "Too-large number set to system-missing."
msgstr "Zu große Zahl auf fehlend gesetzt."
-#: src/data/data-in.c:402 src/data/data-in.c:573
+#: src/data/data-in.c:406 src/data/data-in.c:577
msgid "Too-small number set to zero."
msgstr "Zu kleine Zahl auf Null gesetzt."
-#: src/data/data-in.c:422
+#: src/data/data-in.c:426
msgid "All characters in field must be digits."
msgstr "Alle Zeichen im Feld müssen Ziffern sein."
-#: src/data/data-in.c:441
+#: src/data/data-in.c:445
msgid "Unrecognized character in field."
msgstr "Unerkanntes Zeichen im Feld."
-#: src/data/data-in.c:462 src/data/data-in.c:725
+#: src/data/data-in.c:466 src/data/data-in.c:729
msgid "Field must have even length."
msgstr "Felder müssen gleiche Länge haben."
-#: src/data/data-in.c:464 src/data/data-in.c:728
+#: src/data/data-in.c:468 src/data/data-in.c:732
msgid "Field must contain only hex digits."
msgstr "Felder dürfen nur Hex-Zahlen enthalten."
-#: src/data/data-in.c:540
+#: src/data/data-in.c:544
msgid "Invalid zoned decimal syntax."
msgstr "Fehlerhaft aufgeteilte Syntax der Dezimalen."
-#: src/data/data-in.c:640 src/data/data-in.c:646
+#: src/data/data-in.c:644 src/data/data-in.c:650
msgid "Invalid syntax for P field."
msgstr "Ungültige Syntax für P Feld."
-#: src/data/data-in.c:764 src/data/data-in.c:810
+#: src/data/data-in.c:768 src/data/data-in.c:814
msgid "Syntax error in date field."
msgstr "Syntaxfehler in Datum-Feld."
-#: src/data/data-in.c:779
+#: src/data/data-in.c:783
#, c-format
msgid "Day (%ld) must be between 1 and 31."
msgstr "Tag (%ld) muss zwischen 1 und 31 liegen."
-#: src/data/data-in.c:824
+#: src/data/data-in.c:828
msgid "Delimiter expected between fields in date."
msgstr "Trennzeichen zwischen Feldern in Datum-Feld erwartet."
-#: src/data/data-in.c:898
+#: src/data/data-in.c:902
msgid "Unrecognized month format. Months may be specified as Arabic or Roman numerals or as at least 3 letters of their English names."
msgstr "Unbekanntes Monatsformat. Monate müssen mit arabischen oder romanischen Zahlen oder mindestens den ersten 3 Buchstaben ihrer englischen Namen bezeichnet werden."
-#: src/data/data-in.c:925
+#: src/data/data-in.c:929
#, c-format
msgid "Year (%ld) must be between 1582 and 19999."
msgstr "Jahr (%ld) muss zwischen 1582 und 19999 liegen."
-#: src/data/data-in.c:936
+#: src/data/data-in.c:940
#, c-format
msgid "Trailing garbage `%.*s' following date."
msgstr "Nach dem Datum folgt Müll `%.*s'."
-#: src/data/data-in.c:950
+#: src/data/data-in.c:954
msgid "Julian day must have exactly three digits."
msgstr "Julianischer Tag muss exakt drei Ziffern haben."
-#: src/data/data-in.c:952
+#: src/data/data-in.c:956
#, c-format
msgid "Julian day (%ld) must be between 1 and 366."
msgstr "Julianischer Tag (%ld) muss zwischen 1 und 366 liegen."
-#: src/data/data-in.c:976
+#: src/data/data-in.c:980
#, c-format
msgid "Quarter (%ld) must be between 1 and 4."
msgstr "Quartal (%ld) muss zwischen 1 und 4 liegen."
-#: src/data/data-in.c:997
+#: src/data/data-in.c:1001
#, c-format
msgid "Week (%ld) must be between 1 and 53."
msgstr "Woche (%ld) muss zwischen 1 und 53 liegen."
-#: src/data/data-in.c:1009
+#: src/data/data-in.c:1013
msgid "Delimiter expected between fields in time."
msgstr "Trennzeichen zwischen Feldern in Zeit erwartet."
-#: src/data/data-in.c:1029
+#: src/data/data-in.c:1033
#, c-format
msgid "Minute (%ld) must be between 0 and 59."
msgstr "Minute (%ld) muss zwischen 0 und 59 liegen."
-#: src/data/data-in.c:1067
+#: src/data/data-in.c:1071
msgid "Unrecognized weekday name. At least the first two letters of an English weekday name must be specified."
msgstr "Wochentagsname nicht erkannt. Mindestens die ersten zwei Buchstaben einer englischen Wochentagsbezeichnung müssen angegeben sein."
-#: src/data/data-in.c:1197
+#: src/data/data-in.c:1201
#, c-format
msgid "`%c' expected in date field."
msgstr "`%c' erwartet im Datum-Feld."
msgid "Not opening pipe file `%s' because %s option set."
msgstr "Die Ausgabedatei (pipe) `%s' wurde nicht geöffnet, weil die Option %s gesetzt ist."
-#: src/data/gnumeric-reader.c:36 src/data/ods-reader.c:41
+#: src/data/gnumeric-reader.c:37 src/data/ods-reader.c:41
#, c-format
msgid "Support for %s files was not compiled into this installation of PSPP"
msgstr "Unterstützung für %s Dateien ist nicht in dieser PSPP Installation enthalten."
-#: src/data/gnumeric-reader.c:507 src/data/ods-reader.c:532
+#: src/data/gnumeric-reader.c:520 src/data/ods-reader.c:544
#, c-format
msgid "Cannot convert the value in the spreadsheet cell %s to format (%s): %s"
msgstr "Der Wert in der Tabellenzelle %s kann nicht ins Format konvertiert werden (%s): %s"
-#: src/data/gnumeric-reader.c:530 src/data/ods-reader.c:587
+#: src/data/gnumeric-reader.c:543 src/data/ods-reader.c:599
#, c-format
msgid "There was a problem whilst reading the %s file `%s' (near line %d): `%s'"
msgstr "Beim Lesen der %s Datei `%s' (ungefähr bei Zeile %d): `%s'"
-#: src/data/gnumeric-reader.c:625
+#: src/data/gnumeric-reader.c:638
#, c-format
msgid "The gnumeric file `%s' is encoded as %s instead of the usual UTF-8 encoding. Any non-ascii characters will be incorrectly imported."
msgstr "Die Gnumeric-Datei `%s' ist mit %s kodiert, statt mit der üblichen UTF-8 Kodierung. Alle Nicht-ASCII-Zeichen werden fehlerhaft improtiert."
-#: src/data/gnumeric-reader.c:669 src/data/ods-reader.c:718
+#: src/data/gnumeric-reader.c:682 src/data/ods-reader.c:730
#, c-format
msgid "Invalid cell range `%s'"
msgstr "Ungültiger Zellbereich `%s'"
-#: src/data/gnumeric-reader.c:841 src/data/ods-reader.c:746
-#: src/data/ods-reader.c:879
+#: src/data/gnumeric-reader.c:854 src/data/ods-reader.c:758
+#: src/data/ods-reader.c:891
#, c-format
msgid "Selected sheet or range of spreadsheet `%s' is empty."
msgstr "Ausgewähltes Blatt oder Bereich der Tabelle `%s' ist leer."
msgid "%s is not a valid name for a multiple response set. Multiple response set names must begin with `$'."
msgstr "%s ist kein gültiger Name für ein Set von Mehrfachantworten. Die Namen von Mehrfachantwort-Sets müssen mit `$' beginnen."
-#: src/data/ods-reader.c:639
+#: src/data/ods-reader.c:651
#, c-format
msgid "Cannot open %s as a OpenDocument file: %s"
msgstr "Kann %s nicht als OpenDocument Datei öffnen: %s"
msgid "Error opening `%s' for reading as an SPSS/PC+ system file: %s."
msgstr "Beim Öffnen von `%s' als SPSS/PC+ System-Datei ist ein Fehler aufgetreten: %s."
-#: src/data/pc+-file-reader.c:224 src/data/sys-file-reader.c:3490
+#: src/data/pc+-file-reader.c:224 src/data/sys-file-reader.c:3492
#, c-format
msgid "%s: stat failed (%s)."
msgstr "%s: Stat ist fehlgeschlagen (%s)."
msgid "Directory fields have unexpected values (%u,%u)."
msgstr "Die Verzeichnisfelder haben unerwartete Werte (%u,%u)."
-#: src/data/pc+-file-reader.c:372 src/data/sys-file-reader.c:680
+#: src/data/pc+-file-reader.c:372 src/data/sys-file-reader.c:679
#, c-format
msgid "Variable %zu"
msgstr "Variable %zu"
-#: src/data/pc+-file-reader.c:380 src/data/sys-file-reader.c:688
+#: src/data/pc+-file-reader.c:380 src/data/sys-file-reader.c:687
#, c-format
msgid "Variable %zu Label"
msgstr "Beschriftung der Variable %zu"
msgid "Variable %zu Value Label %zu"
msgstr "Variable %zu Wertelabel %zu"
-#: src/data/pc+-file-reader.c:388 src/data/sys-file-reader.c:698
+#: src/data/pc+-file-reader.c:388 src/data/sys-file-reader.c:697
msgid "Creation Date"
msgstr "Erstellungsdatum"
-#: src/data/pc+-file-reader.c:389 src/data/sys-file-reader.c:699
+#: src/data/pc+-file-reader.c:389 src/data/sys-file-reader.c:698
msgid "Creation Time"
msgstr "Erstellungszeit"
-#: src/data/pc+-file-reader.c:390 src/data/sys-file-reader.c:700
+#: src/data/pc+-file-reader.c:390 src/data/sys-file-reader.c:699
msgid "Product"
msgstr "Produkt"
-#: src/data/pc+-file-reader.c:391 src/data/sys-file-reader.c:701
+#: src/data/pc+-file-reader.c:391 src/data/sys-file-reader.c:700
msgid "File Label"
msgstr "Dateibezeichnung"
msgid "Using default encoding %s to read this SPSS/PC+ system file. For best results, specify an encoding explicitly. Use SYSFILE INFO with ENCODING=\"DETECT\" to analyze the possible encodings."
msgstr "Beim Einlesen der SPSS/PC+ Systemdatei wird die voreingestellte Zeichensatzkodierung %s verwendet. Um Ihre Ergebnisse noch weiter zu verbessern, sollten Sie einen Zeichensatz explizit festlegen. Verwenden Sie den Befehl SYSFILE INFO mit dem Argument ENCODING=\"DETECT\", um die zur Verfügung stehenden Zeichensätze in Erfahren zu bringen."
-#: src/data/pc+-file-reader.c:483 src/data/sys-file-reader.c:914
+#: src/data/pc+-file-reader.c:483 src/data/sys-file-reader.c:913
#, c-format
msgid "Error closing system file `%s': %s."
msgstr "Fehler beim schließen der Systemdatei `%s': %s."
msgid "Invalid weight index %u."
msgstr "Ungültiger Gewichtungsindex %u."
-#: src/data/pc+-file-reader.c:857 src/data/sys-file-reader.c:1438
+#: src/data/pc+-file-reader.c:857 src/data/sys-file-reader.c:1437
#, c-format
msgid "Invalid variable name `%s'."
msgstr "Ungültiger Variablenname `%s'."
-#: src/data/pc+-file-reader.c:865 src/data/sys-file-reader.c:1453
+#: src/data/pc+-file-reader.c:865 src/data/sys-file-reader.c:1452
#, c-format
msgid "Renaming variable with duplicate name `%s' to `%s'."
msgstr "Variable mit doppeltem Namen wird von `%s' zu `%s' umbenannt."
msgid "Cannot weight by string variable `%s'."
msgstr "Gewichtung mit der Stringvariablen `%s' ist nicht möglich."
-#: src/data/pc+-file-reader.c:975 src/data/sys-file-reader.c:2713
+#: src/data/pc+-file-reader.c:975 src/data/sys-file-reader.c:2712
msgid "File ends in partial case."
msgstr "Datei endet in einem Fall."
msgid "Case beginning at offset 0x%08x extends past end of data record at offset 0x%08x."
msgstr "Der Fall, der am Offset 0x%08x beginnt, überschreitet das Ende des Dateneintrags am Offset 0x%08x."
-#: src/data/pc+-file-reader.c:1000 src/data/sys-file-reader.c:2721
+#: src/data/pc+-file-reader.c:1000 src/data/sys-file-reader.c:2720
#, c-format
msgid "Error reading case from file %s."
msgstr "Fehler beim lesen eines Falls aus Datei %s."
-#: src/data/pc+-file-reader.c:1116 src/data/sys-file-reader.c:2884
+#: src/data/pc+-file-reader.c:1116 src/data/sys-file-reader.c:2883
#, c-format
msgid "Possible compressed data corruption: string contains compressed integer (opcode %d)."
msgstr "Komprimierte Daten sind möglicherweise nicht lesbar: Zeichenfolge enthält eine Integerzahl (opcode %d)."
-#: src/data/pc+-file-reader.c:1160 src/data/sys-file-reader.c:3179
+#: src/data/pc+-file-reader.c:1160 src/data/sys-file-reader.c:3181
#, c-format
msgid "`%s' near offset 0x%llx: "
msgstr "`%s' nahe Offset 0x%llx: "
-#: src/data/pc+-file-reader.c:1163 src/data/sys-file-reader.c:3182
+#: src/data/pc+-file-reader.c:1163 src/data/sys-file-reader.c:3184
#, c-format
msgid "`%s': "
msgstr "`%s': "
-#: src/data/pc+-file-reader.c:1219 src/data/sys-file-reader.c:3237
+#: src/data/pc+-file-reader.c:1219 src/data/sys-file-reader.c:3239
#, c-format
msgid "System error: %s."
msgstr "System Fehler: %s."
-#: src/data/pc+-file-reader.c:1224 src/data/sys-file-reader.c:3242
+#: src/data/pc+-file-reader.c:1224 src/data/sys-file-reader.c:3244
msgid "Unexpected end of file."
msgstr "Unerwartetes Dateiende."
-#: src/data/pc+-file-reader.c:1309 src/data/sys-file-reader.c:3467
+#: src/data/pc+-file-reader.c:1309 src/data/sys-file-reader.c:3469
#, c-format
msgid "%s: seek failed (%s)."
msgstr "%s: Suche ist fehlgeschlagen (%s)."
msgid "Invalid variable name `%s' in position %d."
msgstr "Ungültiger Variablenname `%s' an Position %d. "
-#: src/data/por-file-reader.c:734 src/data/sys-file-reader.c:1445
+#: src/data/por-file-reader.c:734 src/data/sys-file-reader.c:1444
#, c-format
msgid "Bad width %d for variable %s."
msgstr "Falsche Breite %d für Variable %s."
msgid "Connection is unencrypted, but unencrypted connections have not been permitted."
msgstr "Die Verbindung ist unverschlüselt, aber es liegt keine Berechtigung für eine unverschlüsselte Verbindungen vor."
-#: src/data/psql-reader.c:319 src/data/psql-reader.c:344
-#: src/data/psql-reader.c:354
+#: src/data/psql-reader.c:324 src/data/psql-reader.c:349
+#: src/data/psql-reader.c:359
#, c-format
msgid "Error from psql source: %s."
msgstr "Fehler aus psql Quelle: %s."
-#: src/data/psql-reader.c:449
+#: src/data/psql-reader.c:454
#, c-format
msgid "Unsupported OID %d. SYSMIS values will be inserted."
msgstr "Nicht unterstützter Object Identifier (OID) %d. Stattdessen wird SYSMIS eingefügt."
#. TRANSLATORS: this fragment will be interpolated into
#. messages in fh_lock() that identify types of files.
-#: src/data/sys-file-reader.c:411 src/data/sys-file-writer.c:245
+#: src/data/sys-file-reader.c:410 src/data/sys-file-writer.c:245
msgid "system file"
msgstr "Systemdatei"
-#: src/data/sys-file-reader.c:418
+#: src/data/sys-file-reader.c:417
#, c-format
msgid "Error opening `%s' for reading as a system file: %s."
msgstr "Beim Öffnen von `%s' als System-Datei ist ein Fehler aufgetreten: %s."
-#: src/data/sys-file-reader.c:495
+#: src/data/sys-file-reader.c:494
msgid "Misplaced type 4 record."
msgstr "Falsch gesetzter Typ 4 Eintrag."
-#: src/data/sys-file-reader.c:501
+#: src/data/sys-file-reader.c:500
msgid "Duplicate type 6 (document) record."
msgstr "Doppelter Typ 6 (Dokument) Eintrag."
-#: src/data/sys-file-reader.c:514 src/data/sys-file-reader.c:1363
+#: src/data/sys-file-reader.c:513 src/data/sys-file-reader.c:1362
#, c-format
msgid "Unrecognized record type 7, subtype %d. For help, please send this file to %s and mention that you were using %s."
msgstr "Eintrag vom Typ 7, Untertyp %d wurde nicht erkannt. Bitte schicken Sie eine Kopie dieser Datei an %s und geben Sie an, dass Sie %s verwendet haben."
-#: src/data/sys-file-reader.c:534
+#: src/data/sys-file-reader.c:533
#, c-format
msgid "Record type 7, subtype %d found here has the same type as the record found near offset 0x%llx. For help, please send this file to %s and mention that you were using %s."
msgstr "Der hier gefundene Eintrag vom Typ 7, Untertyp %d ist vom selben Type wie der Eintrag der in der Nähe des Offsets 0x%llx. Bitte senden Sie eine Kopie dieser Datei an %s und geben Sie an, dass Sie %s verwendet haben."
-#: src/data/sys-file-reader.c:546
+#: src/data/sys-file-reader.c:545
#, c-format
msgid "Unrecognized record type %d."
msgstr "Typ des Eintrags %d nicht erkannt."
-#: src/data/sys-file-reader.c:696
+#: src/data/sys-file-reader.c:695
#, c-format
msgid "Value Label %zu"
msgstr "Wertelabel %zu"
-#: src/data/sys-file-reader.c:705
+#: src/data/sys-file-reader.c:704
msgid "Extra Product Info"
msgstr "Zusätzliche Produktinformation"
-#: src/data/sys-file-reader.c:718
+#: src/data/sys-file-reader.c:717
#, c-format
msgid "Document Line %zu"
msgstr "Zeile imDokument %zu"
-#: src/data/sys-file-reader.c:726
+#: src/data/sys-file-reader.c:725
#, c-format
msgid "MRSET %zu"
msgstr "MRSET %zu"
-#: src/data/sys-file-reader.c:728
+#: src/data/sys-file-reader.c:727
#, c-format
msgid "MRSET %zu Label"
msgstr "MRSET %zu Label"
-#: src/data/sys-file-reader.c:733
+#: src/data/sys-file-reader.c:732
#, c-format
msgid "MRSET %zu Counted Value"
msgstr "MRSET %zu Anzahl"
-#: src/data/sys-file-reader.c:772
+#: src/data/sys-file-reader.c:771
#, c-format
msgid "This system file does not indicate its own character encoding. Using default encoding %s. For best results, specify an encoding explicitly. Use SYSFILE INFO with ENCODING=\"DETECT\" to analyze the possible encodings."
msgstr "Diese Systemdatei enthält keine Angaben zur Kodierung des Zeichensatzes. Es wird der voreingestellte Zeichensatz %s verwendet. Um Ihre Ergebnisse noch weiter zu verbessern, sollten Sie einen Zeichensatz explizit festlegen. Verwenden Sie den Befehl SYSFILE INFO mit dem Argument ENCODING=\"DETECT\", um die zur Verfügung stehenden Zeichensätze in Erfahren zu bringen."
-#: src/data/sys-file-reader.c:826
+#: src/data/sys-file-reader.c:825
#, c-format
msgid "Ignoring string variable `%s' set as weighting variable."
msgstr "Die Stringvariable `%s' wird nicht als Gewichtungsvariable übernommen."
-#: src/data/sys-file-reader.c:869
+#: src/data/sys-file-reader.c:868
#, c-format
msgid "File header claims %d variable positions but %zu were read from file."
msgstr "Der Dateikopf legt %d Variablenpositionen fest, aber es wurden %zu Positionen ausgelesen."
-#: src/data/sys-file-reader.c:980 src/data/sys-file-reader.c:994
+#: src/data/sys-file-reader.c:979 src/data/sys-file-reader.c:993
msgid "This is not an SPSS system file."
msgstr "Dies ist keine SPSS System Datei."
-#: src/data/sys-file-reader.c:1049
+#: src/data/sys-file-reader.c:1048
msgid "Compression bias is not the usual value of 100, or system file uses unrecognized floating-point format."
msgstr "Der compression bias hat nicht den üblichen Wert von 100 oder die Systemdatei verwendet ein nicht erkanntes Format für Fließkommazahlen."
-#: src/data/sys-file-reader.c:1124
+#: src/data/sys-file-reader.c:1123
msgid "Variable label indicator field is not 0 or 1."
msgstr "Variablenindikator-Feld ist weder 0 noch 1."
-#: src/data/sys-file-reader.c:1137
+#: src/data/sys-file-reader.c:1136
msgid "Numeric missing value indicator field is not -3, -2, 0, 1, 2, or 3."
msgstr "Numerisches Feld für die Anzeige fehlender Werte ist nicht -3, -2, 0, 1, 2, oder 3."
-#: src/data/sys-file-reader.c:1147
+#: src/data/sys-file-reader.c:1146
msgid "String missing value indicator field is not 0, 1, 2, or 3."
msgstr "Wert für fehlende Daten ist nicht 0, 1, 2, oder 3."
-#: src/data/sys-file-reader.c:1174
+#: src/data/sys-file-reader.c:1173
#, c-format
msgid "Invalid number of labels %u."
msgstr "Ungültige Anzahl von Beschriftungen %u."
-#: src/data/sys-file-reader.c:1207
+#: src/data/sys-file-reader.c:1206
msgid "Variable index record (type 4) does not immediately follow value label record (type 3) as it should."
msgstr "Der Eintrag des Variablenindex (Typ 4) folgt nicht direkt auf den Eintrag des Wertelabels (Typ 3) wie erforderlich."
-#: src/data/sys-file-reader.c:1219
+#: src/data/sys-file-reader.c:1218
#, c-format
msgid "Number of variables associated with a value label (%u) is not between 1 and the number of variables (%zu)."
msgstr "Die Anzahl der Variablen, die mit einem Variablenlabel assoziiert wurden (%u) liegt nicht zwischen 1 und der Anzahl der Variablen (%zu)."
-#: src/data/sys-file-reader.c:1248
+#: src/data/sys-file-reader.c:1247
#, c-format
msgid "Number of document lines (%d) must be greater than 0 and less than %d."
msgstr "Anzahl der Zeilen im Dokument (%d) muss größer als 0 und kleiner als %d sein."
-#: src/data/sys-file-reader.c:1337
+#: src/data/sys-file-reader.c:1336
#, c-format
msgid "Record type 7, subtype %d has bad size %u (expected %d)."
msgstr "Eintrag vom Typ 7, Untertyp %d hat die falsche Größe %u (erwarteter Wert %d)."
-#: src/data/sys-file-reader.c:1341
+#: src/data/sys-file-reader.c:1340
#, c-format
msgid "Record type 7, subtype %d has bad count %u (expected %d)."
msgstr "Eintrag vom Typ 7, Untertyp %d hat die falsche Anzahl %u (erwarteter Wert %d)."
-#: src/data/sys-file-reader.c:1525
+#: src/data/sys-file-reader.c:1524
msgid "Missing string continuation record."
msgstr "Fehlender Eintrag zur Fortführung der Zeichenfolge."
-#: src/data/sys-file-reader.c:1571
+#: src/data/sys-file-reader.c:1570
#, c-format
msgid "Variable %s with width %d has invalid print format 0x%x."
msgstr "Variable %s mit Breite %d hat ein ungültiges Ausgabeformat 0x%x."
-#: src/data/sys-file-reader.c:1575
+#: src/data/sys-file-reader.c:1574
#, c-format
msgid "Variable %s with width %d has invalid write format 0x%x."
msgstr "Variable %s mit Breite %d hat ein ungültiges Schreibformat 0x%x."
-#: src/data/sys-file-reader.c:1580
+#: src/data/sys-file-reader.c:1579
msgid "Suppressing further invalid format warnings."
msgstr "Weitere Warnungen zu ungültigen Formaten werden unterdrückt."
-#: src/data/sys-file-reader.c:1634
+#: src/data/sys-file-reader.c:1633
#, c-format
msgid "Floating-point representation indicated by system file (%d) differs from expected (%d)."
msgstr "Die in der Systemdatei (%d) angegebene Fließkommadarstellung weicht vom erwarteten Format (%d) ab."
-#: src/data/sys-file-reader.c:1650
+#: src/data/sys-file-reader.c:1649
#, c-format
msgid "Integer format indicated by system file (%d) differs from expected (%d)."
msgstr "Das in der Systemdatei (%d) angegebene Integerformat weicht vom erwarteten Format (%d) ab."
-#: src/data/sys-file-reader.c:1668 src/data/sys-file-reader.c:1674
+#: src/data/sys-file-reader.c:1667 src/data/sys-file-reader.c:1673
#, c-format
msgid "File specifies unexpected value %g (%a) as %s, instead of %g (%a)."
msgstr "Die Datei legt unerwarteter Weise den Wert %g (%a) als %s fest anstatt %g (%a)."
-#: src/data/sys-file-reader.c:1683
+#: src/data/sys-file-reader.c:1682
#, c-format
msgid "File specifies unexpected value %g (%a) as %s, instead of %g (%a) or %g (%a)."
msgstr "Die Datei legt unerwarteter Weise den Wert %g (%a) als %s fest anstatt %g (%a) oder %g (%a)."
-#: src/data/sys-file-reader.c:1735 src/data/sys-file-reader.c:1754
+#: src/data/sys-file-reader.c:1734 src/data/sys-file-reader.c:1753
#, c-format
msgid "Missing space following `%c' at offset %zu in MRSETS record."
msgstr "Fehlendes Leezeichen nach `%c' beim Offset %zu in MRSETS Eintrag."
-#: src/data/sys-file-reader.c:1764
+#: src/data/sys-file-reader.c:1763
#, c-format
msgid "Unexpected label source value following `E' at offset %zu in MRSETS record."
msgstr "Unerwarteter Wert für LABELSOURCE nach `E' beim Offset %zu in MRSETS Eintrag."
-#: src/data/sys-file-reader.c:1771
+#: src/data/sys-file-reader.c:1770
#, c-format
msgid "Missing `C', `D', or `E' at offset %zu in MRSETS record."
msgstr "Fehlendes `C', `D', or `E' beim Offset %zu in MRSETS Eintrag."
-#: src/data/sys-file-reader.c:1798
+#: src/data/sys-file-reader.c:1797
#, c-format
msgid "Missing new-line parsing variable names at offset %zu in MRSETS record."
msgstr "Fehlender Zeilenumbruch beim Einlesen der Variablennamen beim Offset %zu in MRSETS Eintrag."
-#: src/data/sys-file-reader.c:1833
+#: src/data/sys-file-reader.c:1832
#, c-format
msgid "Multiple response set name `%s' does not begin with `$'."
msgstr "Name des Mehrfachantwort-Sets `%s' beginnt nicht mit `$'."
-#: src/data/sys-file-reader.c:1867
+#: src/data/sys-file-reader.c:1866
#, c-format
msgid "MRSET %s contains duplicate variable name %s."
msgstr "MRSET %s enthält doppelten Variablennamen %s."
-#: src/data/sys-file-reader.c:1882
+#: src/data/sys-file-reader.c:1881
#, c-format
msgid "MRSET %s contains both string and numeric variables."
msgstr "MRSET %s enthält sowohl Stringvariablen als auch numerische Variablen."
-#: src/data/sys-file-reader.c:1894
+#: src/data/sys-file-reader.c:1893
#, c-format
msgid "MRSET %s has no variables."
msgstr "MRSET %s hat keine Variablen."
-#: src/data/sys-file-reader.c:1896
+#: src/data/sys-file-reader.c:1895
#, c-format
msgid "MRSET %s has only one variable."
msgstr "MRSET %s hat nur eine Variable."
-#: src/data/sys-file-reader.c:1940
+#: src/data/sys-file-reader.c:1939
#, c-format
msgid "Extension 11 has bad count %u (for %zu variables)."
msgstr "Erweiterung 11 hat die falsche Anzahl %u (für %zu Variablen)."
-#: src/data/sys-file-reader.c:1973
+#: src/data/sys-file-reader.c:1972
#, c-format
msgid "Invalid variable display parameters for variable %zu (%s). Default parameters substituted."
msgstr "Ungültige Parameter der Variablenanzeige für Variable %zu (%s). Voreingestellte Parameter werden eingesetzt."
-#: src/data/sys-file-reader.c:2068
+#: src/data/sys-file-reader.c:2067
#, c-format
msgid "Long variable mapping from %s to invalid variable name `%s'."
msgstr "Zuordnung eines langen Variablennamens von %s zum ungültigen Namen `%s'."
-#: src/data/sys-file-reader.c:2079
+#: src/data/sys-file-reader.c:2078
#, c-format
msgid "Duplicate long variable name `%s'."
msgstr "Doppelter langer Variablenname `%s'."
-#: src/data/sys-file-reader.c:2112
+#: src/data/sys-file-reader.c:2111
#, c-format
msgid "%s listed as string of invalid length %s in very long string record."
msgstr "%s wird als String mit ungültiger Länge %s in einem sehr langen Stringeintrag verzeichnet."
-#: src/data/sys-file-reader.c:2123
+#: src/data/sys-file-reader.c:2122
#, c-format
msgid "%s listed in very long string record with width %s, which requires only one segment."
msgstr "%s ist in einem sehr langen Stringeintrag mit Breite %s verzeichnet, welcher nur ein Segment benötigt."
-#: src/data/sys-file-reader.c:2131
+#: src/data/sys-file-reader.c:2130
#, c-format
msgid "Very long string %s overflows dictionary."
msgstr "Sehr lange Zeichenfolge %s übersteigt das Codebuch."
-#: src/data/sys-file-reader.c:2149
+#: src/data/sys-file-reader.c:2148
#, c-format
msgid "Very long string with width %ld has segment %d of width %d (expected %d)."
msgstr "Sehr lange Zeichenfolge mit Breite %ld hat das Segment %d der Breite %d (erwartet wurde %d)."
-#: src/data/sys-file-reader.c:2192
+#: src/data/sys-file-reader.c:2191
#, c-format
msgid "Variables associated with value label are not all of identical type. Variable %s is %s, but variable %s is %s."
msgstr "Die mit dem Wertelabel verbundenen Variablen haben nicht alle den gleichen Typ. Die Variable %s ist %s, aber die Variable %s ist %s."
-#: src/data/sys-file-reader.c:2212
+#: src/data/sys-file-reader.c:2211
#, c-format
msgid "Value labels may not be added to long string variables (e.g. %s) using records types 3 and 4."
msgstr "Wertelabels dürfen nicht zu langen Stringvariablen hinzugefügt werden (z.B. %s), wenn Einträge des Typs 3 und 4 verwendet werden."
-#: src/data/sys-file-reader.c:2233
+#: src/data/sys-file-reader.c:2232
#, c-format
msgid "Duplicate value label for %g on %s."
msgstr "Doppelte Wertebeschriftung für %g in %s."
-#: src/data/sys-file-reader.c:2237 src/data/sys-file-reader.c:2550
+#: src/data/sys-file-reader.c:2236 src/data/sys-file-reader.c:2549
#, c-format
msgid "Duplicate value label for `%.*s' on %s."
msgstr "Doppelte Wertebeschriftung für `%.*s' in %s."
-#: src/data/sys-file-reader.c:2264
+#: src/data/sys-file-reader.c:2263
#, c-format
msgid "Variable index %d not in valid range 1...%zu."
msgstr "Variablenindex %d liegt nicht im gültigen Bereich 1...%zu."
-#: src/data/sys-file-reader.c:2273
+#: src/data/sys-file-reader.c:2272
#, c-format
msgid "Variable index %d refers to long string continuation."
msgstr "Der Variablenindex %d verweist auf die Forsetzung einer langen Zeichenfolge."
-#: src/data/sys-file-reader.c:2309
+#: src/data/sys-file-reader.c:2308
#, c-format
msgid "Error parsing attribute value %s[%d]."
msgstr "Fehler beim bearbeiten des Attribut-Wertes %s[%d]."
-#: src/data/sys-file-reader.c:2323
+#: src/data/sys-file-reader.c:2322
#, c-format
msgid "Attribute value %s[%d] is not quoted: %s."
msgstr "Der Wert des Attributs %s[%d] wurde nicht in Anführungszeichen gesetzt: %s."
-#: src/data/sys-file-reader.c:2413
+#: src/data/sys-file-reader.c:2412
#, c-format
msgid "Invalid role for variable %s."
msgstr "Ungültige Rolle für Variable `%s'."
-#: src/data/sys-file-reader.c:2422
+#: src/data/sys-file-reader.c:2421
#, c-format
msgid "%zu other variables had invalid roles."
msgstr "%zu weitere Variablen hatten ungültige Rollen."
-#: src/data/sys-file-reader.c:2435
+#: src/data/sys-file-reader.c:2434
#, c-format
msgid "Extension record subtype %d ends unexpectedly."
msgstr "Erweiterungseintrag des Untertyps %d endet unerwartet."
-#: src/data/sys-file-reader.c:2480
+#: src/data/sys-file-reader.c:2479
#, c-format
msgid "Ignoring long string value label record for unknown variable %s."
msgstr "Langer String im Eintrag der Wertebezeichnung für die Variable %s wird ignoriert."
-#: src/data/sys-file-reader.c:2485
+#: src/data/sys-file-reader.c:2484
#, c-format
msgid "Ignoring long string value label record for numeric variable %s."
msgstr "Langer String im Eintrag der Wertebezeichnung für die numerische Variable %s wird ignoriert."
-#: src/data/sys-file-reader.c:2492
+#: src/data/sys-file-reader.c:2491
#, c-format
msgid "Ignoring long string value label record for variable %s because the record's width (%d) does not match the variable's width (%d)."
msgstr "Langer String im Eintrag der Wertebezeichnung für Variable %s wird ignoriert, weil die Breite des Eintrags (%d) nicht mit der Breite der Variable (%d) übereinstimmt."
-#: src/data/sys-file-reader.c:2523
+#: src/data/sys-file-reader.c:2522
#, c-format
msgid "Ignoring long string value label %zu for variable %s, with width %d, that has bad value width %zu."
msgstr "Langer String der Wertebezeichnung %zu für die Variable %s mit Breite %d hat die fehlerhafte Breite %zu und wird ignoriert."
-#: src/data/sys-file-reader.c:2596
+#: src/data/sys-file-reader.c:2595
#, c-format
msgid "Long string missing values record says variable %s has %d missing values, but only 1 to 3 missing values are allowed."
msgstr "Langer String im Eintrag der fehlenden Werte besagt, dass die Variable %s %d fehlende Werte hat, es sind aber nur zwischen 1 und 3 fehlende Werte erlaubt."
-#: src/data/sys-file-reader.c:2606
+#: src/data/sys-file-reader.c:2605
#, c-format
msgid "Ignoring long string missing value record for unknown variable %s."
msgstr "Langer String im Eintrag der fehlenden Werte für die unbekannte Variable %s wird ignoriert."
-#: src/data/sys-file-reader.c:2611
+#: src/data/sys-file-reader.c:2610
#, c-format
msgid "Ignoring long string missing value record for numeric variable %s."
msgstr "Langer String im Eintrag der fehlenden Werte für die numerische Variable %s wird ignoriert."
-#: src/data/sys-file-reader.c:2636
+#: src/data/sys-file-reader.c:2635
#, c-format
msgid "Ignoring long string missing value %zu for variable %s, with width %d, that has bad value width %zu."
msgstr "Langer String des fehlenden Wertes %zu für die Variable %s mit Breite %d hat die fehlerhafte Breite %zu und wird ignoriert."
-#: src/data/sys-file-reader.c:2691
+#: src/data/sys-file-reader.c:2690
msgid "File ends in partial string value."
msgstr "Datei endet innerhalb eines unvollständigen Falls."
-#: src/data/sys-file-reader.c:2830
+#: src/data/sys-file-reader.c:2829
msgid "Possible compressed data corruption: compressed spaces appear in numeric field."
msgstr "Komprimierte Daten sind möglicherweise nicht lesbar: kompriemierte Leerzeichen erscheinen in einem numerischen Feld."
-#: src/data/sys-file-reader.c:2981
+#: src/data/sys-file-reader.c:2980
#, c-format
msgid "Suppressed %d additional related warnings."
msgstr "Weitere %d Warnungen, die damit in Verbindung stehen, werden unterdrückt."
-#: src/data/sys-file-reader.c:3027 src/data/sys-file-reader.c:3044
+#: src/data/sys-file-reader.c:3026 src/data/sys-file-reader.c:3043
#, c-format
msgid "Dictionary record refers to unknown variable %s."
msgstr "Eintrag im Codebuch bezieht sich auf die unbekannte Variable %s."
-#: src/data/sys-file-reader.c:3106
+#: src/data/sys-file-reader.c:3105
#, c-format
msgid "Expecting digit at offset %zu in MRSETS record."
msgstr "Beim Offset %zu im MRSETS Eintrag wurde eine Ziffer erwartet."
-#: src/data/sys-file-reader.c:3114
+#: src/data/sys-file-reader.c:3113
#, c-format
msgid "Expecting space at offset %zu in MRSETS record."
msgstr "Beim Offset %zu im MRSETS Eintrag wurde ein Leerzeichen erwartet."
-#: src/data/sys-file-reader.c:3122
+#: src/data/sys-file-reader.c:3121
#, c-format
msgid "%zu-byte string starting at offset %zu exceeds record length %zu."
msgstr "Die %zu-byte lange Zeichenfolge, die beim Offset %zu beginnt, überschreitet die Länge %zu."
-#: src/data/sys-file-reader.c:3132
+#: src/data/sys-file-reader.c:3131
#, c-format
msgid "Expecting space at offset %zu following %zu-byte string."
msgstr "Beim Offset %zu nach der %zu-byte langen Zeichenfolge wurde ein Leerzeichen erwartet."
-#: src/data/sys-file-reader.c:3425
+#: src/data/sys-file-reader.c:3427
#, c-format
msgid "Wrong ZLIB data header offset %#llx (expected %#llx)."
msgstr "Fehlerhafter Offset %#llx (erwartet wurde %#llx) im Kopf der ZLIB-Daten."
-#: src/data/sys-file-reader.c:3433
+#: src/data/sys-file-reader.c:3435
#, c-format
msgid "Impossible ZLIB trailer offset 0x%llx."
msgstr "Offset 0x%llx im Nachspann der ZLIB-Daten ist nicht möglich."
-#: src/data/sys-file-reader.c:3440
+#: src/data/sys-file-reader.c:3442
#, c-format
msgid "Invalid ZLIB trailer length %lld."
msgstr "Länge %lld des Nachspanns der ZLIB-Daten ist ungültig."
-#: src/data/sys-file-reader.c:3504
+#: src/data/sys-file-reader.c:3506
#, c-format
msgid "End of ZLIB trailer (0x%llx) is not file size (0x%llx)."
msgstr "Das Ende des Nachspanns der ZLIB-Daten (0x%llx) stimmt nicht mit der Dateigröße (0x%llx) überein."
-#: src/data/sys-file-reader.c:3514
+#: src/data/sys-file-reader.c:3516
#, c-format
msgid "ZLIB trailer bias (%lld) differs from file header bias (%.2f)."
msgstr "Der Bias im Nachspann der ZLIB-Daten (%lld) unterscheidet sich vom Bias im Kopf der Datei (%.2f)."
-#: src/data/sys-file-reader.c:3524
+#: src/data/sys-file-reader.c:3526
#, c-format
msgid "ZLIB trailer \"zero\" field has nonzero value %lld."
msgstr "Das Feld \"zero\" im Nachspann der ZLIB-Daten hat den von Null verschiedenen Wert %lld."
-#: src/data/sys-file-reader.c:3530
+#: src/data/sys-file-reader.c:3532
#, c-format
msgid "ZLIB trailer specifies unexpected %u-byte block size."
msgstr "Der Nachspann der ZLIB-Daten legt die unerwartete Blockgröße von %u Bytes fest."
-#: src/data/sys-file-reader.c:3538
+#: src/data/sys-file-reader.c:3540
#, c-format
msgid "%lld-byte ZLIB trailer specifies %u data blocks (expected %lld)."
msgstr "Der Nachspann der ZLIB-Daten der Größe %lld Bytes legt %u Datenblocks fest (erwartet wurde %lld)."
-#: src/data/sys-file-reader.c:3563
+#: src/data/sys-file-reader.c:3565
#, c-format
msgid "ZLIB block descriptor %u reported uncompressed data offset %#llx, when %#llx was expected."
msgstr "Die Blockbeschreibung %u der ZLIB-Daten berichtet ein Offset der unkomprimierten Daten von %#llx, wobei %#llx erwartet wurde."
-#: src/data/sys-file-reader.c:3572
+#: src/data/sys-file-reader.c:3574
#, c-format
msgid "ZLIB block descriptor %u reported compressed data offset %#llx, when %#llx was expected."
msgstr "Die Blockbeschreibung %u der ZLIB-Daten berichtet ein Offset der komprimierten Daten von %#llx, wobei %#llx erwartet wurde."
-#: src/data/sys-file-reader.c:3582
+#: src/data/sys-file-reader.c:3584
#, c-format
msgid "ZLIB block descriptor %u reported block size %#x, when %#x was expected."
msgstr "Die Blockbeschreibung %u der ZLIB-Daten berichtet eine Blockgröße von %#x, wobei %#x erwartet wurde."
-#: src/data/sys-file-reader.c:3590
+#: src/data/sys-file-reader.c:3592
#, c-format
msgid "ZLIB block descriptor %u reported block size %#x, when at most %#x was expected."
msgstr "Die Blockbeschreibung %u der ZLIB-Daten berichtet eine Blockgröße von %#x, wobei höchstens %#x erwartet wurde."
-#: src/data/sys-file-reader.c:3602
+#: src/data/sys-file-reader.c:3604
#, c-format
msgid "ZLIB block descriptor %u reports compressed size %u and uncompressed size %u."
msgstr "Die Blockbeschreibung %u der ZLIB-Daten berichtet eine komprimierte Größe von %u und eine unkomprimierte Größe von %u."
-#: src/data/sys-file-reader.c:3614
+#: src/data/sys-file-reader.c:3616
#, c-format
msgid "ZLIB trailer is at offset %#llx but %#llx would be expected from block descriptors."
msgstr "Der Nachspann der ZLIB-Daten liegt beim Offset %#llx, aber auf Grund der Blockbeschreibungen wurde %#llx erwartet."
-#: src/data/sys-file-reader.c:3633
+#: src/data/sys-file-reader.c:3635
#, c-format
msgid "ZLIB initialization failed (%s)."
msgstr "Initialisierung von ZLIB ist fehlgeschlagen (%s)."
-#: src/data/sys-file-reader.c:3648
+#: src/data/sys-file-reader.c:3650
#, c-format
msgid "Inconsistency at end of ZLIB stream (%s)."
msgstr "Am Ende des ZLIB-Datenstroms ist eine Inkonsistenz aufgetreten (%s)."
-#: src/data/sys-file-reader.c:3707
+#: src/data/sys-file-reader.c:3709
#, c-format
msgid "ZLIB stream inconsistency (%s)."
msgstr "Im ZLIB-Datenstrom ist eine Inkonsistenz aufgetreten (%s)."
-#: src/data/sys-file-reader.c:3731
+#: src/data/sys-file-reader.c:3733
msgid "Unexpected end of ZLIB compressed data."
msgstr "Unerwartetes Ende der komprimierten ZLIB-Daten."
-#: src/data/sys-file-reader.c:3769
+#: src/data/sys-file-reader.c:3771
msgid "SPSS System File"
msgstr "SPSS Systemdatei"
msgid "Input"
msgstr "Eingabe"
-#. TRANSLATORS: This will form a filename. Please avoid whitespace.
-#: src/data/variable.c:877 src/ui/gui/psppire-output-window.c:526
+#. TRANSLATORS: This will be part of a filename. Please avoid whitespace.
+#: src/data/variable.c:877 src/ui/gui/psppire-output-window.c:581
msgid "Output"
msgstr "Ziel"
msgstr "Syntax Fehler am ende der Eingabe"
#: src/language/lexer/lexer.c:419 src/language/xforms/select-if.c:60
-#: src/language/stats/autorecode.c:217 src/language/stats/npar.c:503
+#: src/language/stats/autorecode.c:218 src/language/stats/npar.c:503
#: src/language/data-io/print-space.c:83
msgid "expecting end of command"
msgstr "erwarte Befehlsende"
#: src/language/lexer/format-parser.c:116
#: src/language/lexer/format-parser.c:143 src/language/utilities/output.c:154
-#: src/language/data-io/data-list.c:453 src/language/data-io/get-data.c:643
+#: src/language/data-io/data-list.c:453 src/language/data-io/get-data.c:638
#: src/language/data-io/placement-parser.c:236
#, c-format
msgid "Unknown format type `%s'."
msgid "Scratch variables not allowed here."
msgstr "Temporäre Variablen sind hier nicht erlaubt."
-#: src/language/lexer/variable-parser.c:500
+#: src/language/lexer/variable-parser.c:501
msgid "Prefixes don't match in use of TO convention."
msgstr "Die Prefixes stimmen nicht überein, wie für den TO Befehl erforderlich."
-#: src/language/lexer/variable-parser.c:505
+#: src/language/lexer/variable-parser.c:506
msgid "Bad bounds in use of TO convention."
msgstr "Die Grenzen bei der Verwendung des TO Befehls sind nicht richtig angegeben."
msgid "Multiple Response Sets"
msgstr "Mehrfachantworten-Sets"
-#: src/language/dictionary/mrsets.c:548 src/ui/gui/psppire-var-sheet.c:1368
+#: src/language/dictionary/mrsets.c:548 src/ui/gui/psppire-var-sheet.c:1359
msgid "Name"
msgstr "Name"
#: src/language/dictionary/split-file.c:84
#: src/language/dictionary/sys-file-info.c:444
#: src/language/dictionary/sys-file-info.c:543
-#: src/ui/gui/psppire-var-sheet.c:1381 src/ui/gui/compute.ui:141
+#: src/ui/gui/psppire-var-sheet.c:1372 src/ui/gui/compute.ui:141
msgid "Label"
msgstr "Beschriftung"
msgid "Vectors must have at least one element."
msgstr "Vektoren müssen mindestens ein Element besitzen."
-#: src/language/dictionary/vector.c:152
+#: src/language/dictionary/vector.c:151
msgid "expecting vector length"
msgstr "erwarte Vektorlänge"
-#: src/language/dictionary/vector.c:172
+#: src/language/dictionary/vector.c:171
#, c-format
msgid "%s is an existing variable name."
msgstr "%s ist ein existierender Variablenname"
msgid "Variable name %s is not unique within the aggregate file dictionary, which contains the aggregate variables and the break variables."
msgstr "Der Variablenname %s erscheint im aggregierten Codebuch der Datei, das die zusammengefassten Variablen und die Break-Variablen enthält, mehr als einmal."
-#: src/language/stats/autorecode.c:164
+#: src/language/stats/autorecode.c:165
#, c-format
msgid "Source variable count (%zu) does not match target variable count (%zu)."
msgstr "Anzahl der Quellvariablen (%zu) stimmt nicht mit der Anzahl der Zielvariablen (%zu) überein."
-#: src/language/stats/autorecode.c:176
+#: src/language/stats/autorecode.c:177
#, c-format
msgid "Target variable %s duplicates existing variable %s."
msgstr "Zielvariable %s hat den selben Namen wie die existierende Variable %s."
#: src/language/stats/binomial.c:222 src/language/stats/chisquare.c:184
#: src/language/stats/chisquare.c:246 src/language/stats/examine.c:1341
-#: src/language/stats/factor.c:1753 src/language/stats/frequencies.c:352
+#: src/language/stats/factor.c:1840 src/language/stats/frequencies.c:352
#: src/language/stats/glm.c:865 src/language/stats/kruskal-wallis.c:325
-#: src/language/stats/logistic.c:1410 src/language/stats/mann-whitney.c:215
-#: src/language/stats/means.c:1080 src/language/stats/oneway.c:1006
+#: src/language/stats/logistic.c:1410 src/language/stats/mann-whitney.c:214
+#: src/language/stats/means.c:1076 src/language/stats/oneway.c:1006
#: src/language/stats/oneway.c:1178 src/language/stats/reliability.c:584
-#: src/language/stats/regression.c:954 src/language/stats/sign.c:96
+#: src/language/stats/regression.c:980 src/language/stats/sign.c:96
#: src/language/stats/wilcoxon.c:256
#: src/ui/gui/psppire-dialog-action-crosstabs.c:91
#: src/language/stats/crosstabs.q:907 src/language/stats/crosstabs.q:1252
#: src/language/stats/friedman.c:276 src/language/stats/kruskal-wallis.c:273
#: src/language/stats/ks-one-sample.c:293 src/language/stats/logistic.c:1404
#: src/language/stats/jonckheere-terpstra.c:381
-#: src/language/stats/mann-whitney.c:217 src/language/stats/means.c:408
-#: src/language/stats/means.c:1089 src/language/stats/mcnemar.c:262
+#: src/language/stats/mann-whitney.c:216 src/language/stats/means.c:408
+#: src/language/stats/means.c:1085 src/language/stats/mcnemar.c:262
#: src/language/stats/median.c:419 src/language/stats/npar-summary.c:123
#: src/language/stats/oneway.c:1077 src/language/stats/reliability.c:587
#: src/language/stats/sign.c:75 src/language/stats/t-test-indep.c:211
msgstr "Erwartete N"
#: src/language/stats/chisquare.c:170 src/language/stats/chisquare.c:213
-#: src/language/stats/regression.c:953
+#: src/language/stats/regression.c:979
#: src/ui/gui/psppire-dialog-action-crosstabs.c:93
msgid "Residual"
msgstr "Residual"
#: src/language/stats/chisquare.c:206 src/language/stats/cochran.c:161
#: src/language/stats/median.c:320 src/language/stats/sign.c:63
-#: src/ui/gui/frequencies.ui:656
+#: src/ui/gui/frequencies.ui:658
msgid "Frequencies"
msgstr "Häufigkeiten"
#: src/language/stats/chisquare.c:259 src/language/stats/cochran.c:215
#: src/language/stats/friedman.c:273 src/language/stats/kruskal-wallis.c:343
-#: src/language/stats/mann-whitney.c:278 src/language/stats/mcnemar.c:242
+#: src/language/stats/mann-whitney.c:277 src/language/stats/mcnemar.c:242
#: src/language/stats/median.c:409 src/language/stats/sign.c:115
#: src/language/stats/wilcoxon.c:305
msgid "Test Statistics"
msgstr "Chi-Quadrat"
#: src/language/stats/chisquare.c:274 src/language/stats/cochran.c:224
-#: src/language/stats/factor.c:2189 src/language/stats/friedman.c:286
+#: src/language/stats/factor.c:2372 src/language/stats/friedman.c:286
#: src/language/stats/glm.c:761 src/language/stats/kruskal-wallis.c:349
#: src/language/stats/logistic.c:1224 src/language/stats/median.c:428
#: src/language/stats/oneway.c:983 src/language/stats/oneway.c:1390
-#: src/language/stats/regression.c:947 src/language/stats/t-test-indep.c:293
+#: src/language/stats/regression.c:973 src/language/stats/t-test-indep.c:293
#: src/language/stats/t-test-one-sample.c:96
#: src/language/stats/t-test-paired.c:306 src/language/stats/crosstabs.q:1312
msgid "df"
msgid "Cochran's Q"
msgstr "Cochrans Q"
-#: src/language/stats/correlations.c:97 src/language/stats/factor.c:2094
+#: src/language/stats/correlations.c:97 src/language/stats/factor.c:2277
#: src/language/stats/npar-summary.c:109
msgid "Descriptive Statistics"
msgstr "Deskriptive Statistiken"
#: src/language/stats/correlations.c:118 src/language/stats/descriptives.c:108
-#: src/language/stats/examine.c:890 src/language/stats/factor.c:2115
+#: src/language/stats/examine.c:890 src/language/stats/factor.c:2298
#: src/language/stats/frequencies.c:141 src/language/stats/graph.c:212
#: src/language/stats/ks-one-sample.c:302 src/language/stats/means.c:407
#: src/language/stats/npar-summary.c:126 src/language/stats/oneway.c:1078
msgstr "Mittelwert"
#: src/language/stats/correlations.c:119 src/language/stats/examine.c:982
-#: src/language/stats/factor.c:2116 src/language/stats/ks-one-sample.c:304
+#: src/language/stats/factor.c:2299 src/language/stats/ks-one-sample.c:304
#: src/language/stats/means.c:409 src/language/stats/npar-summary.c:129
#: src/language/stats/oneway.c:1079 src/language/stats/t-test-indep.c:213
#: src/language/stats/t-test-one-sample.c:161
msgid "Std. Deviation"
msgstr "Std. Abweichung"
-#: src/language/stats/correlations.c:192 src/language/stats/factor.c:1981
+#: src/language/stats/correlations.c:192 src/language/stats/factor.c:2068
msgid "Correlations"
msgstr "Korrelationen"
msgid "Sig. (2-tailed)"
msgstr "Sig. (2-seitig)"
-#: src/language/stats/correlations.c:222 src/language/stats/factor.c:1993
+#: src/language/stats/correlations.c:222 src/language/stats/factor.c:2080
msgid "Sig. (1-tailed)"
msgstr "Sig. (1-seitig)"
msgid "Covariance"
msgstr "Kovarianz"
-#: src/language/stats/correlations.c:310
+#: src/language/stats/correlations.c:311
msgid "The data for the chosen variables are all missing or empty."
msgstr "Die Daten der ausgewählten Variablen sind entweder alle fehlend oder leer."
-#: src/language/stats/correlations.c:466 src/language/stats/descriptives.c:374
+#: src/language/stats/correlations.c:467 src/language/stats/descriptives.c:382
#: src/language/data-io/list.c:168
msgid "No variables specified."
msgstr "Keine Variablen angegeben."
msgid "Sum"
msgstr "Summe"
-#: src/language/stats/descriptives.c:356
+#: src/language/stats/descriptives.c:364
#, c-format
msgid "Z-score variable name %s would be a duplicate variable name."
msgstr "Z-Wert Variablenname %s wäre ein Duplikat."
-#: src/language/stats/descriptives.c:407
+#: src/language/stats/descriptives.c:415
msgid "DESCRIPTIVES with Z scores ignores TEMPORARY. Temporary transformations will be made permanent."
msgstr "DESCRIPTIVES mit Z-Werten ignoriert TEMPORARY. Temporäre Umformungen werden dauerhaft gemacht."
-#: src/language/stats/descriptives.c:484
+#: src/language/stats/descriptives.c:492
msgid "expecting statistic name: reverting to default"
msgstr "erwarte den Namen einer Statistik: Rückfall auf die Voreinstellung"
-#: src/language/stats/descriptives.c:567
+#: src/language/stats/descriptives.c:575
msgid "Ran out of generic names for Z-score variables. There are only 126 generic names: ZSC001-ZSC0999, STDZ01-STDZ09, ZZZZ01-ZZZZ09, ZQZQ01-ZQZQ09."
msgstr "Es stehen nicht genügend generische Namen für Z-Wert Variablen zur Verfügung. Es gibt nur 126 generische Namen: ZSC001-ZSC0999, STDZ01-STDZ09, ZZZZ01-ZZZZ09, ZQZQ01-ZQZQ09."
-#: src/language/stats/descriptives.c:596
+#: src/language/stats/descriptives.c:604
msgid "Mapping of variables to corresponding Z-scores."
msgstr "Abbildung der Variablen auf die entsprechenden Z-Werte."
-#: src/language/stats/descriptives.c:600 src/language/stats/glm.c:755
+#: src/language/stats/descriptives.c:608 src/language/stats/glm.c:755
msgid "Source"
msgstr "Quelle"
-#: src/language/stats/descriptives.c:601
+#: src/language/stats/descriptives.c:609
msgid "Target"
msgstr "Ziel"
-#: src/language/stats/descriptives.c:673
+#: src/language/stats/descriptives.c:681
msgid "Internal error processing Z scores"
msgstr "Interner Fehler beim Verarbeiten der Z-Werte"
-#: src/language/stats/descriptives.c:771
+#: src/language/stats/descriptives.c:779
#, c-format
msgid "Z-score of %s"
msgstr "Z-Wert von %s"
-#: src/language/stats/descriptives.c:1022
+#: src/language/stats/descriptives.c:1030
msgid "Valid N"
msgstr "Gültige N"
-#: src/language/stats/descriptives.c:1023
+#: src/language/stats/descriptives.c:1031
msgid "Missing N"
msgstr "Fehlende N"
-#: src/language/stats/descriptives.c:1051
+#: src/language/stats/descriptives.c:1059
#, c-format
msgid "Valid cases = %.*g; cases with missing value(s) = %.*g."
msgstr "Gültige Fälle = %.*g; Fälle mit fehlenden Werten = %.*g."
#: src/language/stats/examine.c:811 src/language/stats/oneway.c:1080
#: src/language/stats/oneway.c:1388 src/language/stats/oneway.c:1599
-#: src/language/stats/roc.c:993 src/language/stats/regression.c:837
+#: src/language/stats/roc.c:993 src/language/stats/regression.c:856
msgid "Std. Error"
msgstr "Standardfehler"
#: src/language/stats/examine.c:915 src/language/stats/oneway.c:1089
#: src/language/stats/oneway.c:1606 src/language/stats/roc.c:996
-#: src/language/stats/regression.c:855
+#: src/language/stats/regression.c:873
msgid "Lower Bound"
msgstr "Untere Grenze"
#: src/language/stats/examine.c:928 src/language/stats/oneway.c:1090
#: src/language/stats/oneway.c:1607 src/language/stats/roc.c:997
-#: src/language/stats/regression.c:856
+#: src/language/stats/regression.c:874
msgid "Upper Bound"
msgstr "Obere Grenze"
msgid "Extreme Values"
msgstr "Extremwerte"
-#: src/language/stats/examine.c:1132 src/language/stats/quick-cluster.c:591
+#: src/language/stats/examine.c:1132 src/language/stats/quick-cluster.c:588
#: src/language/data-io/list.c:114
msgid "Case Number"
msgstr "Fallnummer"
msgstr "Niedrigster"
#: src/language/stats/examine.c:1311 src/language/stats/logistic.c:1394
-#: src/language/stats/means.c:1065 src/language/stats/reliability.c:552
+#: src/language/stats/means.c:1061 src/language/stats/reliability.c:552
msgid "Case Processing Summary"
msgstr "Zusammenfassung der Fallverarbeitung"
-#: src/language/stats/examine.c:1327 src/language/stats/means.c:1076
+#: src/language/stats/examine.c:1327 src/language/stats/means.c:1072
#: src/language/stats/reliability.c:575 src/language/stats/crosstabs.q:904
msgid "Cases"
msgstr "Fälle"
#: src/language/stats/examine.c:1331 src/language/stats/frequencies.c:1601
-#: src/language/stats/quick-cluster.c:641 src/language/stats/reliability.c:578
+#: src/language/stats/quick-cluster.c:638 src/language/stats/reliability.c:578
#: src/language/stats/crosstabs.q:905
msgid "Valid"
msgstr "Gültig"
#: src/language/stats/examine.c:1348 src/language/stats/frequencies.c:295
#: src/language/stats/frequencies.c:1500 src/language/stats/logistic.c:1405
-#: src/language/stats/means.c:1091 src/language/stats/crosstabs.q:915
+#: src/language/stats/means.c:1087 src/language/stats/crosstabs.q:915
msgid "Percent"
msgstr "Prozent"
msgid "%s and %s are mutually exclusive"
msgstr "%s und %s schließen sich gegeseitig aus"
-#: src/language/stats/factor.c:1048
+#: src/language/stats/factor.c:1071
+#, c-format
+msgid "Matrix input for %s must be either COV or CORR"
+msgstr "Die Eingabe der Matrix für %s muss entweder über COV oder CORR erfolgen"
+
+#: src/language/stats/factor.c:1468
msgid "Factor analysis on a single variable is not useful."
msgstr "Faktorenanalyse einer einzelnen Variable ist nicht sinnvoll."
-#: src/language/stats/factor.c:1493
+#: src/language/stats/factor.c:1472
+msgid "Factor analysis without variables is not possible."
+msgstr "Eine Faktorenanalyse ohne Variablen ist nicht sinnvoll."
+
+#: src/language/stats/factor.c:1579
msgid "Component Number"
msgstr "Komponentennummer"
-#: src/language/stats/factor.c:1493
+#: src/language/stats/factor.c:1579
msgid "Factor Number"
msgstr "Faktorzahl"
-#: src/language/stats/factor.c:1524
+#: src/language/stats/factor.c:1610
msgid "Communalities"
msgstr "Kommunalitäten"
-#: src/language/stats/factor.c:1530
+#: src/language/stats/factor.c:1616
msgid "Initial"
msgstr "Ursprünglich"
-#: src/language/stats/factor.c:1533
+#: src/language/stats/factor.c:1619
msgid "Extraction"
msgstr "Extraktion"
-#: src/language/stats/factor.c:1598 src/language/stats/factor.c:1727
-#: src/language/stats/factor.c:1872
+#: src/language/stats/factor.c:1684 src/language/stats/factor.c:1814
+#: src/language/stats/factor.c:1959
msgid "Component"
msgstr "Komponente"
-#: src/language/stats/factor.c:1603 src/language/stats/factor.c:1729
-#: src/language/stats/factor.c:1874
+#: src/language/stats/factor.c:1689 src/language/stats/factor.c:1816
+#: src/language/stats/factor.c:1961
msgid "Factor"
msgstr "Faktor"
-#: src/language/stats/factor.c:1635
+#: src/language/stats/factor.c:1721
#, c-format
msgid "%d"
msgstr "%d"
-#: src/language/stats/factor.c:1702
+#: src/language/stats/factor.c:1789
msgid "Total Variance Explained"
msgstr "Erklärte Gesamtvarianz"
-#: src/language/stats/factor.c:1734
+#: src/language/stats/factor.c:1821
msgid "Initial Eigenvalues"
msgstr "Ursprüngliche Eigenwerte"
-#: src/language/stats/factor.c:1740
+#: src/language/stats/factor.c:1827
msgid "Extraction Sums of Squared Loadings"
msgstr "Summe der quadrierten Ladungen der Extraktion"
-#: src/language/stats/factor.c:1747
+#: src/language/stats/factor.c:1834
msgid "Rotation Sums of Squared Loadings"
msgstr "Summe der quadrierten Ladungen der Rotation"
-#: src/language/stats/factor.c:1761
+#: src/language/stats/factor.c:1848
#, no-c-format
msgid "% of Variance"
msgstr "% der Varianz"
-#: src/language/stats/factor.c:1762
+#: src/language/stats/factor.c:1849
msgid "Cumulative %"
msgstr "Kumuliert %"
-#: src/language/stats/factor.c:1787 src/language/stats/factor.c:1878
-#: src/language/stats/factor.c:1883
+#: src/language/stats/factor.c:1874 src/language/stats/factor.c:1965
+#: src/language/stats/factor.c:1970
#, c-format
msgid "%zu"
msgstr "%zu"
-#: src/language/stats/factor.c:1847
+#: src/language/stats/factor.c:1934
msgid "Factor Correlation Matrix"
msgstr "Faktor-Korrelationsmatrix"
-#: src/language/stats/factor.c:1939
+#: src/language/stats/factor.c:2026
msgid "Correlation Matrix"
msgstr "Korrelationsmatrix"
-#: src/language/stats/factor.c:2013
+#: src/language/stats/factor.c:2100
msgid "Determinant"
msgstr "Determinante"
-#: src/language/stats/factor.c:2045
+#: src/language/stats/factor.c:2138
+msgid "Covariance Matrix"
+msgstr "Kovarianzmatrix"
+
+#: src/language/stats/factor.c:2211
msgid "The dataset contains no complete observations. No analysis will be performed."
msgstr "Der Datensatz enthält keine vollständigen Beobachtungen. Die Analyse wird nicht durchgeführt."
-#: src/language/stats/factor.c:2117
+#: src/language/stats/factor.c:2235
+msgid "The dataset has no complete covariance or correlation matrix."
+msgstr "Im Datensatz ist keine vollständige Kovarianz oder Korrelationsmatrix enthalten."
+
+#: src/language/stats/factor.c:2300
msgid "Analysis N"
msgstr "Analyse N"
-#: src/language/stats/factor.c:2154
+#: src/language/stats/factor.c:2337
msgid "KMO and Bartlett's Test"
msgstr "KMO und Bartlett's Test"
-#: src/language/stats/factor.c:2182
+#: src/language/stats/factor.c:2365
msgid "Kaiser-Meyer-Olkin Measure of Sampling Adequacy"
msgstr "Kaiser-Meyer-Olkin-Maß für Angemessenheit der Stichproben"
-#: src/language/stats/factor.c:2186
+#: src/language/stats/factor.c:2369
msgid "Bartlett's Test of Sphericity"
msgstr "Bartlett's Test auf Sphärizität"
-#: src/language/stats/factor.c:2188
+#: src/language/stats/factor.c:2371
msgid "Approx. Chi-Square"
msgstr "Geschätztes Chi-Quadrat"
-#: src/language/stats/factor.c:2190 src/language/stats/glm.c:764
+#: src/language/stats/factor.c:2373 src/language/stats/glm.c:764
#: src/language/stats/logistic.c:1225 src/language/stats/oneway.c:986
#: src/language/stats/oneway.c:1234 src/language/stats/oneway.c:1600
-#: src/language/stats/regression.c:841 src/language/stats/regression.c:950
+#: src/language/stats/regression.c:860 src/language/stats/regression.c:976
#: src/language/stats/t-test-indep.c:291
#: src/language/stats/t-test-paired.c:235
msgid "Sig."
msgstr "Sig."
-#: src/language/stats/factor.c:2231
+#: src/language/stats/factor.c:2416
#, c-format
msgid "The %s criteria result in zero factors extracted. Therefore no analysis will be performed."
msgstr "Auf Grund des %s-Kriteriums konnten keine Faktoren extrahiert werden. Daher wird keine Analyse durchgeführt."
-#: src/language/stats/factor.c:2238
+#: src/language/stats/factor.c:2423
#, c-format
msgid "The %s criteria result in more factors than variables, which is not meaningful. No analysis will be performed."
msgstr "Das %s-Kriterium führt zu mehr Faktoren als Variablen. Dies ist nicht sinnvoll. Die Analyse wird nicht durchgeführt."
-#: src/language/stats/factor.c:2330
+#: src/language/stats/factor.c:2515
msgid "Component Matrix"
msgstr "Komponentenmatrix"
-#: src/language/stats/factor.c:2330
+#: src/language/stats/factor.c:2515
msgid "Factor Matrix"
msgstr "Faktor Matrix"
-#: src/language/stats/factor.c:2335
+#: src/language/stats/factor.c:2520
msgid "Pattern Matrix"
msgstr "Mustermatrix"
-#: src/language/stats/factor.c:2342
+#: src/language/stats/factor.c:2527
msgid "Structure Matrix"
msgstr "Strukturmatrix"
-#: src/language/stats/factor.c:2343
+#: src/language/stats/factor.c:2528
msgid "Rotated Component Matrix"
msgstr "Rotierte Komponentenmatrix"
-#: src/language/stats/factor.c:2343
+#: src/language/stats/factor.c:2529
msgid "Rotated Factor Matrix"
msgstr "Rotierte Faktormatrix"
msgstr "50 (Median)"
#: src/language/stats/friedman.c:227 src/language/stats/kruskal-wallis.c:258
-#: src/language/stats/mann-whitney.c:198 src/language/stats/wilcoxon.c:226
+#: src/language/stats/mann-whitney.c:197 src/language/stats/wilcoxon.c:226
msgid "Ranks"
msgstr "Ränge"
#: src/language/stats/friedman.c:238 src/language/stats/kruskal-wallis.c:272
-#: src/language/stats/mann-whitney.c:223 src/language/stats/wilcoxon.c:240
+#: src/language/stats/mann-whitney.c:222 src/language/stats/wilcoxon.c:240
msgid "Mean Rank"
msgstr "Durchschnittlicher Rang"
msgstr "Quadratsumme Typ %s"
#: src/language/stats/glm.c:762 src/language/stats/oneway.c:984
-#: src/language/stats/regression.c:948
+#: src/language/stats/regression.c:974
msgid "Mean Square"
msgstr "Mittel der Quadrate"
#: src/language/stats/glm.c:763 src/language/stats/oneway.c:985
-#: src/language/stats/regression.c:949 src/language/stats/t-test-indep.c:290
+#: src/language/stats/regression.c:975 src/language/stats/t-test-indep.c:290
msgid "F"
msgstr "F"
msgid "Corrected Model"
msgstr "Korrigiertes Modell"
-#: src/language/stats/glm.c:774 src/language/stats/regression.c:1001
+#: src/language/stats/glm.c:774 src/language/stats/regression.c:1027
msgid "Model"
msgstr "Modell"
#: src/language/stats/ks-one-sample.c:399
#: src/language/stats/jonckheere-terpstra.c:386
-#: src/language/stats/mann-whitney.c:294 src/language/stats/runs.c:402
+#: src/language/stats/mann-whitney.c:293 src/language/stats/runs.c:402
#: src/language/stats/wilcoxon.c:319 src/language/stats/crosstabs.q:1314
msgid "Asymp. Sig. (2-tailed)"
msgstr "Asymp. Sig. (2-seitig)"
msgid "Step 1"
msgstr "Schritt 1"
-#: src/language/stats/logistic.c:1221 src/language/stats/regression.c:836
+#: src/language/stats/logistic.c:1221 src/language/stats/regression.c:855
msgid "B"
msgstr "B"
msgid "Std. J-T Statistic"
msgstr "Std. J-T Statistik"
-#: src/language/stats/mann-whitney.c:229 src/language/stats/wilcoxon.c:241
+#: src/language/stats/mann-whitney.c:228 src/language/stats/wilcoxon.c:241
msgid "Sum of Ranks"
msgstr "Summe der Ränge"
-#: src/language/stats/mann-whitney.c:291
+#: src/language/stats/mann-whitney.c:290
msgid "Mann-Whitney U"
msgstr "Mann-Whitney U"
-#: src/language/stats/mann-whitney.c:292
+#: src/language/stats/mann-whitney.c:291
msgid "Wilcoxon W"
msgstr "Wilcoxon W"
-#: src/language/stats/mann-whitney.c:293 src/language/stats/runs.c:399
+#: src/language/stats/mann-whitney.c:292 src/language/stats/runs.c:399
#: src/language/stats/wilcoxon.c:318
msgid "Z"
msgstr "Z"
-#: src/language/stats/mann-whitney.c:298 src/language/stats/mcnemar.c:265
+#: src/language/stats/mann-whitney.c:297 src/language/stats/mcnemar.c:265
#: src/language/stats/sign.c:134 src/language/stats/wilcoxon.c:323
msgid "Exact Sig. (2-tailed)"
msgstr "Exakte Sig. (2-seitig)"
-#: src/language/stats/mann-whitney.c:299 src/language/stats/mcnemar.c:271
+#: src/language/stats/mann-whitney.c:298 src/language/stats/mcnemar.c:271
#: src/language/stats/sign.c:140 src/language/stats/wilcoxon.c:327
msgid "Point Probability"
msgstr "Punktwahrscheinlichkeit"
msgid "Geom. Mean"
msgstr "Geom. Mittel"
-#: src/language/stats/means.c:1078
+#: src/language/stats/means.c:1074
msgid "Included"
msgstr "Eingeschlossen"
-#: src/language/stats/means.c:1079 src/language/stats/reliability.c:581
+#: src/language/stats/means.c:1075 src/language/stats/reliability.c:581
msgid "Excluded"
msgstr "Ausgeschlossen"
-#: src/language/stats/means.c:1121 src/language/stats/means.c:1130
-#: src/language/stats/means.c:1139
+#: src/language/stats/means.c:1117 src/language/stats/means.c:1126
+#: src/language/stats/means.c:1135
#, c-format
msgid "%g%%"
msgstr "%g%%"
-#: src/language/stats/means.c:1171
+#: src/language/stats/means.c:1167
msgid "Report"
msgstr "Bericht"
msgid "Coefficients for contrast %zu do not total zero"
msgstr "Die Koeffizienten für den Kontrast %zu addieren sich nicht zu Null auf."
-#: src/language/stats/oneway.c:982 src/language/stats/regression.c:946
+#: src/language/stats/oneway.c:982 src/language/stats/regression.c:972
msgid "Sum of Squares"
msgstr "Quadratsumme"
msgid "Value of Contrast"
msgstr "Kontrastwert"
-#: src/language/stats/oneway.c:1389 src/language/stats/regression.c:840
+#: src/language/stats/oneway.c:1389 src/language/stats/regression.c:859
#: src/language/stats/t-test-indep.c:292
#: src/language/stats/t-test-one-sample.c:95
#: src/language/stats/t-test-paired.c:305
msgid "%g%% Confidence Interval"
msgstr "%g%% Konfidenzintervall"
-#: src/language/stats/quick-cluster.c:530
+#: src/language/stats/quick-cluster.c:527
msgid "Final Cluster Centers"
msgstr "Clusterzentren der Ausgangsklassifikation"
-#: src/language/stats/quick-cluster.c:534
+#: src/language/stats/quick-cluster.c:531
msgid "Initial Cluster Centers"
msgstr "Anfängliche Clusterzentren"
-#: src/language/stats/quick-cluster.c:537
-#: src/language/stats/quick-cluster.c:592
-#: src/language/stats/quick-cluster.c:629
+#: src/language/stats/quick-cluster.c:534
+#: src/language/stats/quick-cluster.c:589
+#: src/language/stats/quick-cluster.c:626
msgid "Cluster"
msgstr "Cluster"
-#: src/language/stats/quick-cluster.c:590
+#: src/language/stats/quick-cluster.c:587
msgid "Cluster Membership"
msgstr "Cluster-Zugehörigkeit"
-#: src/language/stats/quick-cluster.c:627
+#: src/language/stats/quick-cluster.c:624
msgid "Number of Cases in each Cluster"
msgstr "Anzahl der Fälle in jedem Cluster"
-#: src/language/stats/quick-cluster.c:747
+#: src/language/stats/quick-cluster.c:744
msgid "The number of clusters must be positive"
msgstr "Anzahl der Cluster muß positiv sein"
-#: src/language/stats/quick-cluster.c:763
+#: src/language/stats/quick-cluster.c:760
msgid "The convergence criterium must be positive"
msgstr "Das Konvergenzkriterium muss positiv sein"
-#: src/language/stats/quick-cluster.c:779
+#: src/language/stats/quick-cluster.c:776
msgid "The number of iterations must be positive"
msgstr "Anzahl der Iterationen muß positiv sein"
msgid "1 - Specificity"
msgstr "1- Spezifität"
-#: src/language/stats/regression.c:376
+#: src/language/stats/regression.c:222 src/language/stats/regression.c:227
+#, c-format
+msgid "VARIABLES may not appear after %s"
+msgstr "VARIABLES darf nicht nach %s erscheinen"
+
+#: src/language/stats/regression.c:406
msgid "REGRESSION with SAVE ignores TEMPORARY. Temporary transformations will be made permanent."
msgstr "REGRESSION mit SAVE ignoriert TEMPORARY. Temporäre Umformungen werden dauerhaft gemacht."
-#: src/language/stats/regression.c:380
+#: src/language/stats/regression.c:410
msgid "REGRESSION with SAVE ignores FILTER. All cases will be processed."
msgstr "REGRESSION mit SAVE ignoriert FILTER. Es werden alle Fälle verarbeitet."
-#: src/language/stats/regression.c:515
+#: src/language/stats/regression.c:545
msgid "The dependent variable is equal to the independent variable. The least squares line is therefore Y=X. Standard errors and related statistics may be meaningless."
msgstr "Die abhängige Variable ist mit der unabhängigen Variable identisch. Die Regressionsgerade ist daher Y=X. Standardfehler und damit verbundene Statistiken sind eventuell aussagelos."
-#: src/language/stats/regression.c:699
+#: src/language/stats/regression.c:719
msgid "No valid data found. This command was skipped."
msgstr "Keine gültigen Daten gefunden. Dieser Befehl wird übersprungen."
-#: src/language/stats/regression.c:784
+#: src/language/stats/regression.c:804
#: src/ui/gui/psppire-dialog-action-regression.c:42
msgid "R"
msgstr "R"
-#: src/language/stats/regression.c:785
+#: src/language/stats/regression.c:805
msgid "R Square"
msgstr "R-Quadrat"
-#: src/language/stats/regression.c:786
+#: src/language/stats/regression.c:806
msgid "Adjusted R Square"
msgstr "Korrigiertes R-Quadrat"
-#: src/language/stats/regression.c:787
+#: src/language/stats/regression.c:807
msgid "Std. Error of the Estimate"
msgstr "Standardfehler des Schätzers "
-#: src/language/stats/regression.c:792
+#: src/language/stats/regression.c:812
#, c-format
msgid "Model Summary (%s)"
msgstr "Modellzusammenfassung (%s)"
-#: src/language/stats/regression.c:835
+#: src/language/stats/regression.c:854
msgid "Unstandardized Coefficients"
msgstr "Unstandardisierte Koeffizienten"
-#: src/language/stats/regression.c:838
+#: src/language/stats/regression.c:857
msgid "Standardized Coefficients"
msgstr "Standardisierte Koeffizienten"
-#: src/language/stats/regression.c:839
+#: src/language/stats/regression.c:858
msgid "Beta"
msgstr "Beta"
-#: src/language/stats/regression.c:842
-msgid "(Constant)"
-msgstr "(Konstante)"
-
-#: src/language/stats/regression.c:853
+#: src/language/stats/regression.c:871
#, c-format
msgid "%g%% Confidence Interval for B"
msgstr "%g%% Konfidenzintervall für B"
-#: src/language/stats/regression.c:917
+#: src/language/stats/regression.c:879
+msgid "(Constant)"
+msgstr "(Konstante)"
+
+#: src/language/stats/regression.c:942
#, c-format
msgid "Coefficients (%s)"
msgstr "Koeffizienten (%s)"
-#: src/language/stats/regression.c:952 src/ui/gui/regression.ui:8
+#: src/language/stats/regression.c:978 src/ui/gui/regression.ui:8
msgid "Regression"
msgstr "Regression"
-#: src/language/stats/regression.c:975
+#: src/language/stats/regression.c:1001
#, c-format
msgid "ANOVA (%s)"
msgstr "ANOVA (%s)"
-#: src/language/stats/regression.c:1002
+#: src/language/stats/regression.c:1028
msgid "Covariances"
msgstr "Kovarianzen"
-#: src/language/stats/regression.c:1017
+#: src/language/stats/regression.c:1043
#, c-format
msgid "Coefficient Correlations (%s)"
msgstr "Korrelationen der Koeffizienten (%s)"
msgid "The %s subcommand may be used only with %s."
msgstr "Der Unterbefehl %s darf nur mit %s verwendet werden."
-#: src/language/data-io/data-list.c:284
+#: src/language/data-io/data-list.c:284 src/language/data-io/matrix-data.c:494
msgid "At least one variable must be specified."
msgstr "Es muss mindestens eine Variable angegeben werden."
#: src/language/data-io/data-list.c:383 src/language/data-io/data-list.c:491
-#: src/language/data-io/get-data.c:667
+#: src/language/data-io/get-data.c:662
#, c-format
msgid "%s is a duplicate variable name."
msgstr "Der Variablenname %s kommt doppelt vor."
msgid "Cannot place variable %s on record %d when RECORDS=%d is specified."
msgstr "Die Variable %s kann nicht im EIntrag %d platziert werden, wenn RECORDS=%d angegeben wurde."
-#: src/language/data-io/data-parser.c:433
-#: src/language/data-io/data-parser.c:442
+#: src/language/data-io/data-parser.c:451
+#: src/language/data-io/data-parser.c:460
msgid "Quoted string extends beyond end of line."
msgstr "Eine Zeichenfolge in Anführungszeichen erstreckt sich über das Zeilenende hinaus."
-#: src/language/data-io/data-parser.c:468
+#: src/language/data-io/data-parser.c:486
msgid "Missing delimiter following quoted string."
msgstr "Fehlendes Trennzeichen nach einer Zeichenfolge in Anführungszeichen."
-#: src/language/data-io/data-parser.c:487
+#: src/language/data-io/data-parser.c:505
#, c-format
msgid "Data for variable %s is not valid as format %s: %s"
msgstr "Die Daten für die Variable %s sind im Format %s ungültig: %s"
-#: src/language/data-io/data-parser.c:516
+#: src/language/data-io/data-parser.c:534
#, c-format
msgid "Partial case of %d of %d records discarded."
msgstr "Ein Teil des Falles %d mit %d Einträgen wurde verworfen."
-#: src/language/data-io/data-parser.c:572
+#: src/language/data-io/data-parser.c:590
#, c-format
msgid "Partial case discarded. The first variable missing was %s."
msgstr "Ein Teil des Falles wurde verworfen. Die erste fehlende Variable ist %s."
-#: src/language/data-io/data-parser.c:614
+#: src/language/data-io/data-parser.c:632
#, c-format
msgid "Missing value(s) for all variables from %s onward. These will be filled with the system-missing value or blanks, as appropriate."
msgstr "Fehlender Wert oder Werte für alle Variablen ab %s. Diese werden mit system-fehlenden Werten oder Leerzeichen aufgefüllt, je nachdem was jeweils angebracht erscheint."
-#: src/language/data-io/data-parser.c:635
+#: src/language/data-io/data-parser.c:653
msgid "Record ends in data not part of any field."
msgstr "Eintrag endet mit Daten nicht nicht Teil eines Feldes sind."
-#: src/language/data-io/data-parser.c:655 src/language/data-io/print.c:447
+#: src/language/data-io/data-parser.c:673 src/language/data-io/print.c:447
msgid "Record"
msgstr "Datensatz"
-#: src/language/data-io/data-parser.c:656 src/language/data-io/print.c:448
-#: src/ui/gui/psppire-var-sheet.c:1389
+#: src/language/data-io/data-parser.c:674 src/language/data-io/print.c:448
+#: src/ui/gui/psppire-var-sheet.c:1380
msgid "Columns"
msgstr "Spalten"
-#: src/language/data-io/data-parser.c:657
-#: src/language/data-io/data-parser.c:694 src/language/data-io/print.c:449
+#: src/language/data-io/data-parser.c:675
+#: src/language/data-io/data-parser.c:712 src/language/data-io/print.c:449
msgid "Format"
msgstr "Format"
-#: src/language/data-io/data-parser.c:675
+#: src/language/data-io/data-parser.c:693
#, c-format
msgid "Reading %d record from %s."
msgid_plural "Reading %d records from %s."
msgstr[0] "%d Eintrag wird von %s gelesen."
msgstr[1] "%d Einträge werden von %s gelesen."
-#: src/language/data-io/data-parser.c:709
+#: src/language/data-io/data-parser.c:727
#, c-format
msgid "Reading free-form data from %s."
msgstr "Unformatierte Daten werden aus %s gelesen."
msgid "Handle for %s not allowed here."
msgstr "Identifikator für %s ist hier nicht erlaubt."
-#: src/language/data-io/get-data.c:138
+#: src/language/data-io/get-data.c:108 src/output/measure.c:262
+#, c-format
+msgid "error reading file `%s'"
+msgstr "Fehler beim Lesen der Datei `%s'"
+
+#: src/language/data-io/get-data.c:127
#, c-format
msgid "Unsupported TYPE %s."
msgstr "TYPE %s wird nicht unterstützt."
-#: src/language/data-io/get-data.c:289
+#: src/language/data-io/get-data.c:278
msgid "The sheet index must be greater than or equal to 1"
msgstr "Die Nummer des Datenblatts muss größer oder gleich 1 sein"
-#: src/language/data-io/get-data.c:296 src/language/data-io/get-data.c:319
-#: src/language/data-io/get-data.c:338
+#: src/language/data-io/get-data.c:285 src/language/data-io/get-data.c:308
+#: src/language/data-io/get-data.c:327
#, c-format
msgid "%s must be followed by either \"%s\" or \"%s\"."
msgstr "Nach %s muss entweder von \"%s\" oder \"%s\" folgen."
-#: src/language/data-io/get-data.c:368
+#: src/language/data-io/get-data.c:357
#, c-format
msgid "%s is allowed only with %s arrangement, but %s arrangement was stated or implied earlier in this command."
msgstr "%s ist nur in Verbindung mit /ARRAGEMENT=%s erlaubt, aber es wurde entweder explizit oder implizit in diesem Befehl an früherer Stelle festegelegt, dass /ARRAGEMENT=%s sein soll."
-#: src/language/data-io/get-data.c:452 src/language/data-io/get-data.c:490
+#: src/language/data-io/get-data.c:441 src/language/data-io/get-data.c:479
#, c-format
msgid "Value of %s must be 1 or greater."
msgstr "Der Wert von %s muss 1 oder mehr betragen."
-#: src/language/data-io/get-data.c:515
+#: src/language/data-io/get-data.c:504
msgid "Ignoring obsolete IMPORTCASES subcommand. (N OF CASES or SAMPLE may be used to substitute.)"
msgstr "Der Unterbefehl IMPORTCASES wird ignoriert (ersatzweise können Sie die Befehle N OF CASES oder SAMPLE verwenden)."
-#: src/language/data-io/get-data.c:562
+#: src/language/data-io/get-data.c:551
msgid "In compatible syntax mode, the QUALIFIER string must contain exactly one character."
msgstr "Im Modus Kompatible Syntax muss der String QUALIFIER genau ein Zeichen enthalten."
-#: src/language/data-io/get-data.c:594
+#: src/language/data-io/get-data.c:583
#: src/language/data-io/placement-parser.c:406
#, c-format
msgid "The record number specified, %ld, is at or before the previous record, %d. Data fields must be listed in order of increasing record number."
msgstr "Die angegebene Nummer des Eintrags, %ld, liegt beim oder vor dem vorhergehenden Eintrag, %d. Datenfelder müssen in aufsteigender Reihenfolge aufgelistet werden."
-#: src/language/data-io/get-data.c:603
+#: src/language/data-io/get-data.c:592
#, c-format
msgid "The record number specified, %ld, exceeds the number of records per case specified on FIXCASE, %d."
msgstr "Die angegebene Nummer des Eintrags, %ld, übersteigt die Anzahl der Einträge pro Fall, %d, die mit FIXCASE festgelegt wurde."
msgstr[0] "%zu Eintrag wird geschrieben."
msgstr[1] "%zu Einträge werden geschrieben."
+#: src/language/data-io/matrix-data.c:176
+#, c-format
+msgid "There are %d variable declared but the data has at least %d matrix rows."
+msgstr "Es wurden %d Variablen spezifiziert, in den Daten sind aber mindestens %d Matrix-Zeilen enthalten."
+
+#: src/language/data-io/matrix-data.c:484
+msgid "FORMAT = FULL and FORMAT = NODIAGONAL are mutually exclusive."
+msgstr "FORMAT = FULL und FORMAT = NODIAGONAL schließen sich gegeseitig aus."
+
+#: src/language/data-io/matrix-reader.c:98
+#: src/language/data-io/matrix-reader.c:114
+#, c-format
+msgid "Matrix dataset lacks a variable called %s."
+msgstr "Im Matrix-Datensatz fehlt die Variable %s."
+
+#: src/language/data-io/matrix-reader.c:105
+#: src/language/data-io/matrix-reader.c:121
+#, c-format
+msgid "Matrix dataset variable %s should be of string type."
+msgstr "Die Variable %s im Matrix-Datensatz sollte vom Typ String sein."
+
#: src/language/data-io/save-translate.c:170
#: src/language/data-io/save-translate.c:185
#, c-format
msgid "Errors (%d) exceed limit (%d). Syntax processing will be halted."
msgstr "Anzahl der Fehler (%d) hat die Grenze (%d) überschritten. Verarbeitung der Syntax wird angehalten."
-#: src/libpspp/zip-reader.c:85
+#: src/libpspp/zip-reader.c:86
#, c-format
msgid "Unsupported compression type (%d)"
msgstr "Komprimierungstyp (%d) wird nicht unterstützt"
-#: src/libpspp/zip-reader.c:211
+#: src/libpspp/zip-reader.c:212
#, c-format
msgid "Corrupt file at 0x%llx: Expected %<PRIx32>; got %<PRIx32>"
msgstr "Fehlerhafte Datei an der Stelle 0x%llx: erwartet %<PRIx32>; gefunden %<PRIx32>"
-#: src/libpspp/zip-reader.c:335
+#: src/libpspp/zip-reader.c:337
msgid "Cannot find central directory"
msgstr "Das Hauptverzeichnis konnte nicht gefunden werden."
-#: src/libpspp/zip-reader.c:344
+#: src/libpspp/zip-reader.c:346
#, c-format
msgid "Failed to seek to end of central directory record: %s"
msgstr "Fehler bei der Suche nach dem Ende des Hauptverzeichnis-Eintrags: %s"
-#: src/libpspp/zip-reader.c:370
+#: src/libpspp/zip-reader.c:372
#, c-format
msgid "Failed to seek to central directory: %s"
msgstr "Fehler bei der Suche nach dem Hauptverzeichnis: %s"
-#: src/libpspp/zip-reader.c:425
+#: src/libpspp/zip-reader.c:427
#, c-format
msgid "Failed to seek to start of member `%s': %s"
msgstr "Fehler bei der Suche des Anfangs des Elements `%s': %s"
-#: src/libpspp/zip-reader.c:456
+#: src/libpspp/zip-reader.c:458
#, c-format
msgid "Name mismatch in zip archive. Central directory says `%s'; local file header says `%s'"
msgstr "Diskrepanz zwischen den Namen im Zip-Archiv. Das Hauptverzeichnis besagt `%s'; der lokale Dateikopf besagt `%s'"
msgid "error opening input file `%s'"
msgstr "Fehler beim Öffnen der Eingabedatei `%s'"
-#: src/output/measure.c:262
-#, c-format
-msgid "error reading file `%s'"
-msgstr "Fehler beim Lesen der Datei `%s'"
-
#: src/output/measure.c:279
#, c-format
msgid "file `%s' does not state a paper size"
msgid "error drawing output for %s driver: %s"
msgstr "Fehler beim Zeichnen der Ausgabe für den Treiber %s: %s"
-#: src/output/cairo.c:1468
+#: src/output/cairo.c:1469
#, c-format
msgid "error writing output file `%s': %s"
msgstr "Fehler beim Schreiben der Ausgabedatei `%s': %s"
msgid "%s: output option specified more than once"
msgstr "%s: die Ausgabeoption wurde mehr als einmal angegeben"
-#: src/ui/terminal/terminal-opts.c:173
+#: src/ui/terminal/terminal-opts.c:172
#, c-format
msgid ""
"PSPP, a program for statistical analysis of sampled data.\n"
"\n"
"Argumente ohne Optionen werden als Syntaxdateien interpretiert und ausgeführt.\n"
-#: src/ui/terminal/terminal.c:62
-#, c-format
-msgid "could not access definition for terminal `%s'"
-msgstr "Auf die Eigenschaften des Terminals `%s' konnte nicht zugegriffen werden."
-
#: src/ui/gui/psppire-import-assistant.c:535
#, c-format
msgid "Could not open `%s'"
msgstr "Einlesen von Tabellendokumenten"
#: src/ui/gui/psppire-import-assistant.c:853
-#: src/ui/gui/psppire-data-window.c:512 src/ui/gui/psppire-syntax-window.c:581
-#: src/ui/gui/psppire-window.c:684
+#: src/ui/gui/psppire-data-window.c:555 src/ui/gui/psppire-syntax-window.c:572
+#: src/ui/gui/psppire-window.c:683
msgid "All Files"
msgstr "Alle Dateien"
msgid "This input line has too few separators to fill in this field."
msgstr "Diese Datenzeile besitzt zu wenig Trennzeichen um dieses Feld zu füllen."
-#: src/ui/gui/psppire-import-assistant.c:1881
+#: src/ui/gui/psppire-import-assistant.c:1887
msgid "Choose Separators"
msgstr "Trennzeichen auswählen"
-#: src/ui/gui/psppire-import-assistant.c:2106
+#: src/ui/gui/psppire-import-assistant.c:2112
msgid "An error occurred reading the spreadsheet file."
msgstr "Beim Schreiben des Tabellendokuments ist ein Fehler aufgetreten."
-#: src/ui/gui/psppire-import-assistant.c:2161
+#: src/ui/gui/psppire-import-assistant.c:2167
msgid "Adjust Variable Formats"
msgstr "Einstellen des Variablenformates"
"Olaf Nöhring\n"
"Bob Earl"
-#: src/ui/gui/help-menu.c:173
+#: src/ui/gui/help-menu.c:174
#, c-format
msgid "Help path conversion error: %s"
msgstr "Fehler bei der Konvertierung des Hilfe-Pfades: %s"
-#: src/ui/gui/help-menu.c:202
+#: src/ui/gui/help-menu.c:203
#, c-format
msgid "Cannot open reference manual via yelp: %s. Cannot open via html: %s with uri: %s The PSSP manual is also available at %s"
msgstr "Das Referenzhandbuch kann nicht mit yelp geöffnet werden: %s. Das Handbuch kann auch nicht als html geöffnet werden: %s mit URI: %s Das PSPP Benutzerhandbuch ist auch unter %s verfügbar"
-#: src/ui/gui/help-menu.c:227
+#: src/ui/gui/help-menu.c:228
msgid "_Help"
msgstr "_Hilfe"
-#: src/ui/gui/help-menu.c:230
+#: src/ui/gui/help-menu.c:231
msgid "_About"
msgstr "_Ãœber"
-#: src/ui/gui/help-menu.c:231
+#: src/ui/gui/help-menu.c:232
msgid "_Reference Manual"
msgstr "_Handbuch inkl. Befehlsreferenz"
-#: src/ui/gui/main.c:96
-#, c-format
-msgid ""
-"PSPPIRE, a GUI for PSPP, a program for statistical analysis of sampled data.\n"
-"Usage: %s [OPTION]... FILE\n"
-"\n"
-"Arguments to long options also apply to equivalent short options.\n"
-"\n"
-"GUI options:\n"
-" -q, --no-splash don't show splash screen during startup\n"
-"\n"
-"%sLanguage options:\n"
-" -I, --include=DIR append DIR to search path\n"
-" -I-, --no-include clear search path\n"
-" -a, --algorithm={compatible|enhanced}\n"
-" set to `compatible' if you want output\n"
-" calculated from broken algorithms\n"
-" -x, --syntax={compatible|enhanced}\n"
-" set to `compatible' to disable PSPP extensions\n"
-" -i, --interactive interpret syntax in interactive mode\n"
-" -s, --safer don't allow some unsafe operations\n"
-"Default search path: %s\n"
-"\n"
-"Informative output:\n"
-" -h, --help display this help and exit\n"
-" -V, --version output version information and exit\n"
-"\n"
-"A non-option argument is interpreted as a data file in .sav or .zsav or .por\n"
-"format or a syntax file to load.\n"
-msgstr ""
-"PSPPIRE, eine grafische Oberfläche für PSPP, ein Programm zur statistischen Analyse von Stichprobendaten.\n"
-"Befehl: %s [OPTION]... DATEI\n"
-"\n"
-"Die gezeigten Argumente für die Langform der Optionen finden auch in der entsprechenden Kurzform der Optionen Anwendung.\n"
-"\n"
-"GUI Optionen:\n"
-" -q, --no-splash Begrüßungsbildschirm soll beim Start nicht gezeigt werden\n"
-"\n"
-"%sSprachoptionen:\n"
-" -I, --include=VERZEICHNIS füge das VERZEICHNIS dem Suchpfad hinzu\n"
-" -I-, --no-include Löschung des Suchpfads\n"
-" -a, --algorithm={compatible|enhanced}\n"
-" auf `compatible' setzen, um auch von fehlerhaften\n"
-" Algorithmen Ausgaben erzeugen zu lassen\n"
-" -x, --syntax={compatible|enhanced}\n"
-" auf `compatible' setzen, um PSPP-Erweiterungen auszuschalten\n"
-" -i, --interactive interpretiere die Syntax im interaktiven Modus\n"
-" --syntax-encoding=KODIERUNG legt die Kodierung der Syntaxdatei fest\n"
-" -s, --safer unterbindet unsichere Operationen\n"
-"Voreigestellter Suchpfad: %s\n"
-"\n"
-"Information:\n"
-" -h, --help Anzeige dieses Hilfetextes\n"
-" -V, --version Anzeige der Versionsinformationen\n"
-"\n"
-"Ein Argument ohne Optionen wird als Datendatei im .sav oder .zsav Format interpretiert\n"
-"oder als Syntaxdatei, die ausgeführt wird.\n"
+#: src/ui/gui/main.c:271
+msgid "Show version information and exit"
+msgstr "Zeige die Versionsinformation und beende die Anwendung"
+
+#: src/ui/gui/main.c:295
+msgid "Do not display the splash screen"
+msgstr "Zeige den Startbildschirm nicht an"
+
+#: src/ui/gui/main.c:297
+msgid "Do not attempt single instance negotiation"
+msgstr "Versuche keine Aushandlung einer Single Instance"
#: src/ui/gui/missing-val-dialog.c:214
msgid "The maximum length of a missing value for a string variable is 8 in UTF-8."
msgid "Incorrect range specification"
msgstr "Ungültige Bereichsspezifikation"
-#: src/ui/gui/psppire.c:316
-msgid "_Reset"
-msgstr "_Zurücksetzen"
-
-#: src/ui/gui/psppire.c:317
-msgid "_Select"
-msgstr "A_swählen"
-
-#: src/ui/gui/psppire-data-editor.c:437
+#: src/ui/gui/psppire-data-editor.c:417
#, c-format
msgid "%'d case"
msgid_plural "%'d cases"
msgstr[0] "%'d Fall"
msgstr[1] "%'d Fälle"
-#: src/ui/gui/psppire-data-editor.c:442
+#: src/ui/gui/psppire-data-editor.c:422
#, c-format
msgid "%'d variable"
msgid_plural "%'d variables"
msgstr[0] "%'d Variable"
msgstr[1] "%'d Variablen"
-#: src/ui/gui/psppire-data-editor.c:733
+#: src/ui/gui/psppire-data-editor.c:715
msgid "Data View"
msgstr "Datenansicht"
-#: src/ui/gui/psppire-data-editor.c:746
+#: src/ui/gui/psppire-data-editor.c:728
msgid "Variable View"
msgstr "Variablenansicht"
msgid "Case"
msgstr "Fall"
-#: src/ui/gui/psppire-data-store.c:550
-msgid "var"
-msgstr "var"
+#: src/ui/gui/psppire-data-sheet.c:1662 src/ui/gui/psppire-data-window.c:1303
+msgid "_Insert Case"
+msgstr "_Fall einfügen"
-#: src/ui/gui/psppire-data-window.c:169
+#: src/ui/gui/psppire-data-sheet.c:1663 src/ui/gui/psppire-data-window.c:1351
+msgid "Cl_ear Cases"
+msgstr "Fälle lös_chen"
+
+#: src/ui/gui/psppire-data-sheet.c:1678 src/ui/gui/psppire-data-window.c:1302
+#: src/ui/gui/psppire-var-sheet.c:944
+msgid "_Insert Variable"
+msgstr "Variable _einfügen"
+
+#: src/ui/gui/psppire-data-sheet.c:1679 src/ui/gui/psppire-var-sheet.c:945
+msgid "Cl_ear Variables"
+msgstr "Variabl_e löschen"
+
+#: src/ui/gui/psppire-data-sheet.c:1680
+msgid "Sort _Ascending"
+msgstr "_Aufsteigend"
+
+#: src/ui/gui/psppire-data-sheet.c:1681
+msgid "Sort _Descending"
+msgstr "A_bsteigend"
+
+#: src/ui/gui/psppire-data-window.c:212
msgid "Transformations Pending"
msgstr "Offene Transformationen werden ausgeführt"
-#: src/ui/gui/psppire-data-window.c:185
+#: src/ui/gui/psppire-data-window.c:228
msgid "Filter off"
msgstr "Keine Auswahl"
-#: src/ui/gui/psppire-data-window.c:197
+#: src/ui/gui/psppire-data-window.c:240
#, c-format
msgid "Filter by %s"
msgstr "Ausgewählt nach %s"
-#: src/ui/gui/psppire-data-window.c:218
+#: src/ui/gui/psppire-data-window.c:261
msgid "No Split"
msgstr "Keine Aufteilung"
-#: src/ui/gui/psppire-data-window.c:227
+#: src/ui/gui/psppire-data-window.c:270
msgid "Split by "
msgstr "Aufgeteilt nach"
-#: src/ui/gui/psppire-data-window.c:255
+#: src/ui/gui/psppire-data-window.c:298
msgid "Weights off"
msgstr "Keine Gewichtung"
-#: src/ui/gui/psppire-data-window.c:267
+#: src/ui/gui/psppire-data-window.c:310
#, c-format
msgid "Weight by %s"
msgstr "Gewichtet nach %s"
-#: src/ui/gui/psppire-data-window.c:487 src/ui/gui/psppire-data-window.c:491
+#: src/ui/gui/psppire-data-window.c:530 src/ui/gui/psppire-data-window.c:534
#: src/ui/gui/psppire-dialog-action-aggregate.c:217
-#: src/ui/gui/psppire-output-window.c:357
-#: src/ui/gui/psppire-syntax-window.c:569 src/ui/gui/psppire-window.c:477
+#: src/ui/gui/psppire-output-window.c:382
+#: src/ui/gui/psppire-syntax-window.c:560 src/ui/gui/psppire-window.c:476
#: src/ui/gui/aggregate.ui:549
msgid "Save"
msgstr "Speichern"
-#: src/ui/gui/psppire-data-window.c:497
+#: src/ui/gui/psppire-data-window.c:540
#: src/ui/gui/psppire-dialog-action-aggregate.c:226
msgid "System Files (*.sav)"
msgstr "PSPP Systemdateien (*.sav)"
-#: src/ui/gui/psppire-data-window.c:502
+#: src/ui/gui/psppire-data-window.c:545
#: src/ui/gui/psppire-dialog-action-aggregate.c:231
msgid "Compressed System Files (*.zsav)"
msgstr "Komprimierte PSPP Systemdateien (*.zsav)"
-#: src/ui/gui/psppire-data-window.c:507
+#: src/ui/gui/psppire-data-window.c:550
#: src/ui/gui/psppire-dialog-action-aggregate.c:236
-#: src/ui/gui/psppire-window.c:673
+#: src/ui/gui/psppire-window.c:672
msgid "Portable Files (*.por) "
msgstr "Portable Dateien (*.por) "
-#: src/ui/gui/psppire-data-window.c:529
+#: src/ui/gui/psppire-data-window.c:572
msgid "System File"
msgstr "PSPP Systemdatei"
-#: src/ui/gui/psppire-data-window.c:536
+#: src/ui/gui/psppire-data-window.c:579
msgid "Compressed System File"
msgstr "Komprimierte PSPP Systemdatei"
-#: src/ui/gui/psppire-data-window.c:542
+#: src/ui/gui/psppire-data-window.c:585
msgid "Portable File"
msgstr "Portable Datei"
-#: src/ui/gui/psppire-data-window.c:545
+#: src/ui/gui/psppire-data-window.c:588
msgid "Format:"
msgstr "Format:"
-#: src/ui/gui/psppire-data-window.c:609
+#: src/ui/gui/psppire-data-window.c:652
msgid "Delete Existing Dataset?"
msgstr "Vorhandenes Datenblatt löschen?"
-#: src/ui/gui/psppire-data-window.c:613
+#: src/ui/gui/psppire-data-window.c:656
#, c-format
msgid "Renaming \"%s\" to \"%s\" will destroy the existing dataset named \"%s\". Are you sure that you want to do this?"
msgstr "Umbenennen von \"%s\" nach \"%s\" löscht das vorhandene Datenblatt \"%s\". Sind Sie sicher, dass Sie das tun wollen?"
-#: src/ui/gui/psppire-data-window.c:619
+#: src/ui/gui/psppire-data-window.c:662
msgid "Delete"
msgstr "Löschen"
-#: src/ui/gui/psppire-data-window.c:641
+#: src/ui/gui/psppire-data-window.c:684
#, c-format
msgid "Please enter a new name for dataset \"%s\":"
msgstr "Geben sie einen neuen Namen für das Datenblatt \"%s\" ein:"
-#: src/ui/gui/psppire-data-window.c:643
+#: src/ui/gui/psppire-data-window.c:686
msgid "Rename Dataset"
msgstr "Datenblatt umbenennen"
-#: src/ui/gui/psppire-data-window.c:1301
+#: src/ui/gui/psppire-data-window.c:1165 src/ui/gui/output-window.ui:52
+#: src/ui/gui/syntax-editor.ui:6
+msgid "_File"
+msgstr "_Datei"
+
+#: src/ui/gui/psppire-data-window.c:1169 src/ui/gui/syntax-editor.ui:9
+msgid "_New"
+msgstr "_Neu"
+
+#: src/ui/gui/psppire-data-window.c:1176
+msgid "_Syntax"
+msgstr "_Syntax"
+
+#: src/ui/gui/psppire-data-window.c:1179 src/ui/gui/data-editor.ui:161
+#: src/ui/gui/data-editor.ui:173
+msgid "_Data"
+msgstr "_Daten"
+
+#: src/ui/gui/psppire-data-window.c:1186 src/ui/gui/syntax-editor.ui:20
+msgid "_Open"
+msgstr "_Öffnen"
+
+#: src/ui/gui/psppire-data-window.c:1189
+msgid "_Import Data..."
+msgstr "Daten _importieren..."
+
+#: src/ui/gui/psppire-data-window.c:1197 src/ui/gui/logistic.ui:244
+#: src/ui/gui/regression.ui:50
+msgid "_Save..."
+msgstr "Speichern..."
+
+#: src/ui/gui/psppire-data-window.c:1200
+msgid "Save _As..."
+msgstr "Speichern _unter..."
+
+#: src/ui/gui/psppire-data-window.c:1203
+msgid "_Rename Dataset..."
+msgstr "_Datenblatt umbenennen..."
+
+#: src/ui/gui/psppire-data-window.c:1214
+msgid "_Display Data File Information"
+msgstr "_Informationen zur Arbeitsdatei anzeigen"
+
+#: src/ui/gui/psppire-data-window.c:1221
+msgid "Working File"
+msgstr "Arbeitsdatei"
+
+#: src/ui/gui/psppire-data-window.c:1223
+msgid "_External File..."
+msgstr "_Externe Datei..."
+
+#: src/ui/gui/psppire-data-window.c:1233
+msgid "_Recently Used Data"
+msgstr "_Zuletzt verwendete Daten"
+
+#: src/ui/gui/psppire-data-window.c:1234
+msgid "Recently Used _Files"
+msgstr "Z_uletzt verwendete Dateien"
+
+#: src/ui/gui/psppire-data-window.c:1281 src/ui/gui/output-window.ui:66
+#: src/ui/gui/syntax-editor.ui:43
+msgid "_Quit"
+msgstr "_Beenden"
+
+#: src/ui/gui/psppire-data-window.c:1298 src/ui/gui/output-window.ui:73
+#: src/ui/gui/syntax-editor.ui:50
+msgid "_Edit"
+msgstr "_Bearbeiten"
+
+#: src/ui/gui/psppire-data-window.c:1304
+msgid "_Go To Variable..."
+msgstr "_Gehe zu Variable..."
+
+#: src/ui/gui/psppire-data-window.c:1305
+msgid "_Go To Case..."
+msgstr "Gehe zu _Fall..."
+
+#: src/ui/gui/psppire-data-window.c:1327 src/ui/gui/syntax-editor.ui:53
+msgid "Cu_t"
+msgstr "_Schnittpunkt"
+
+#: src/ui/gui/psppire-data-window.c:1335 src/ui/gui/output-window.ui:80
+#: src/ui/gui/syntax-editor.ui:58
+msgid "_Copy"
+msgstr "_Kopieren"
+
+#: src/ui/gui/psppire-data-window.c:1341 src/ui/gui/syntax-editor.ui:63
+msgid "_Paste"
+msgstr "_Einfügen"
+
+#: src/ui/gui/psppire-data-window.c:1347
+msgid "Clear _Variables"
+msgstr "Variabl_e löschen"
+
+#: src/ui/gui/psppire-data-window.c:1360
+msgid "_Find..."
+msgstr "_Suchen..."
+
+#: src/ui/gui/psppire-data-window.c:1366 src/ui/gui/logistic.ui:229
+msgid "_Options..."
+msgstr "_Optionen..."
+
+#: src/ui/gui/psppire-data-window.c:1644
+msgid "Jump to variable"
+msgstr "Zu Variable springen"
+
+#: src/ui/gui/psppire-data-window.c:1657
+msgid "Jump to a case in the data sheet"
+msgstr "Gehe zu Fall"
+
+#: src/ui/gui/psppire-data-window.c:1671
+msgid "Search for values in the data"
+msgstr "Suche nach Werten im Datensatz"
+
+#: src/ui/gui/psppire-data-window.c:1683
+msgid "Create a new case at the current position"
+msgstr "An der aktuellen Stelle einen neuen Fall einfügen"
+
+#: src/ui/gui/psppire-data-window.c:1695
+msgid "Create a new variable at the current position"
+msgstr "An der aktuellen Stelle eine neue Variable einfügen"
+
+#: src/ui/gui/psppire-data-window.c:1709
+msgid "Split the active dataset"
+msgstr "Datei aufteilen"
+
+#: src/ui/gui/psppire-data-window.c:1721
+msgid "Weight cases by variable"
+msgstr "Fälle anhand einer Variable gewichten"
+
+#: src/ui/gui/psppire-data-window.c:1732
+msgid "Show/hide value labels"
+msgstr "Ein- / Ausblenden der Wertelabels"
+
+#: src/ui/gui/psppire-data-window.c:1875
msgid "Data Editor"
msgstr "Dateneditor"
msgstr "Zusammenführende Zieldatei"
#: src/ui/gui/psppire-dialog-action-autorecode.c:343
-#: src/ui/gui/psppire-dialog-action-recode.c:536
+#: src/ui/gui/psppire-dialog-action-recode.c:528
#: src/ui/gui/psppire-dialog-action-recode-different.c:286
msgid "New"
msgstr "Neu"
#: src/ui/gui/psppire-dialog-action-autorecode.c:357
-#: src/ui/gui/psppire-dialog-action-recode.c:528
+#: src/ui/gui/psppire-dialog-action-recode.c:520
#: src/ui/gui/psppire-dialog-action-recode-different.c:299
msgid "Old"
msgstr "Alt"
msgstr "Kontraste %d von %d"
#: src/ui/gui/psppire-dialog-action-paired.c:167 src/ui/gui/examine.ui:266
-#: src/ui/gui/indep-samples.ui:315 src/ui/gui/t-test.ui:276
+#: src/ui/gui/indep-samples.ui:318 src/ui/gui/t-test.ui:280
msgid "O_ptions..."
msgstr "_Optionen..."
msgid "Paired Samples T Test"
msgstr "T-Test bei gepaarten Stichproben"
-#: src/ui/gui/psppire-dialog-action-recode-same.c:108 src/ui/gui/recode.ui:373
+#: src/ui/gui/psppire-dialog-action-recode-same.c:108 src/ui/gui/recode.ui:374
msgid "Recode into Same Variables"
msgstr "Umkodieren in dieselbe Variable "
msgstr "%d bis %d"
#: src/ui/gui/psppire-dialog-action-two-sample.c:186
-#: src/ui/gui/k-related.ui:181
+#: src/ui/gui/k-independent.ui:387 src/ui/gui/k-related.ui:180
msgid "Test Type"
msgstr "Testtyp"
msgid "Back"
msgstr "Zurück"
-#: src/ui/gui/psppire-output-view.c:354
+#: src/ui/gui/psppire-output-view.c:366
msgid "Message"
msgstr "Nachricht"
-#: src/ui/gui/psppire-output-view.c:476
+#: src/ui/gui/psppire-output-view.c:488
msgid "failed to create temporary directory during clipboard operation"
msgstr "Erstellung eines temporären Verzeichnisses während einer Operation der Zwischenablage fehlgeschlagen"
-#: src/ui/gui/psppire-output-window.c:245
+#: src/ui/gui/psppire-output-window.c:270
msgid "Infer file type from extension"
msgstr "Dateityp aus Dateiendung bestimmen"
-#: src/ui/gui/psppire-output-window.c:246
+#: src/ui/gui/psppire-output-window.c:271
msgid "PDF (*.pdf)"
msgstr "PDF (*.pdf)"
-#: src/ui/gui/psppire-output-window.c:247
+#: src/ui/gui/psppire-output-window.c:272
msgid "HTML (*.html)"
msgstr "HTML (*.html)"
-#: src/ui/gui/psppire-output-window.c:248
+#: src/ui/gui/psppire-output-window.c:273
msgid "OpenDocument (*.odt)"
msgstr "OpenDocument (*.odt)"
-#: src/ui/gui/psppire-output-window.c:249
+#: src/ui/gui/psppire-output-window.c:274
msgid "Text (*.txt)"
msgstr "Text (*.txt)"
-#: src/ui/gui/psppire-output-window.c:250
+#: src/ui/gui/psppire-output-window.c:275
msgid "Text [plain] (*.txt)"
msgstr "Text [ohne Formatierung] (*.txt)"
-#: src/ui/gui/psppire-output-window.c:251
+#: src/ui/gui/psppire-output-window.c:276
msgid "PostScript (*.ps)"
msgstr "PostScript (*.ps)"
-#: src/ui/gui/psppire-output-window.c:252
+#: src/ui/gui/psppire-output-window.c:277
msgid "Comma-Separated Values (*.csv)"
msgstr "CSV Datei (*.csv)"
-#: src/ui/gui/psppire-output-window.c:353
+#: src/ui/gui/psppire-output-window.c:378
msgid "Export Output"
msgstr "Ausgabe exportieren"
-#: src/ui/gui/psppire-output-window.c:527
+#: src/ui/gui/psppire-output-window.c:582
msgid "Output Viewer"
msgstr "Ausgabeanzeige"
msgid "(empty)"
msgstr "(leer)"
-#: src/ui/gui/psppire-syntax-window.c:544
+#: src/ui/gui/psppire-syntax-window.c:535
#, c-format
msgid "Saved file `%s'"
msgstr "Gepeicherte Datei `%s'"
-#: src/ui/gui/psppire-syntax-window.c:565
+#: src/ui/gui/psppire-syntax-window.c:556
msgid "Save Syntax"
msgstr "Syntax speichern"
-#: src/ui/gui/psppire-syntax-window.c:575 src/ui/gui/psppire-window.c:678
+#: src/ui/gui/psppire-syntax-window.c:566 src/ui/gui/psppire-window.c:677
msgid "Syntax Files (*.sps) "
msgstr "Syntax Dateien (*.sps) "
-#: src/ui/gui/psppire-syntax-window.c:879
+#: src/ui/gui/psppire-syntax-window.c:929
msgid "Syntax Editor"
msgstr "Syntax Editor"
-#: src/ui/gui/psppire-syntax-window.c:894
+#: src/ui/gui/psppire-syntax-window.c:949
#, c-format
msgid "Cannot load syntax file `%s'"
msgstr "Die Syntax-Datei `%s' kann nicht geladen werden"
msgid "{%s, %s}\n"
msgstr "{%s,%s}\n"
-#: src/ui/gui/psppire-var-sheet.c:1374 src/language/stats/crosstabs.q:1390
+#: src/ui/gui/psppire-var-sheet.c:1365 src/language/stats/crosstabs.q:1390
#: src/ui/gui/compute.ui:287
msgid "Type"
msgstr "Typ"
-#: src/ui/gui/psppire-var-sheet.c:1377 src/ui/gui/compute.ui:199
+#: src/ui/gui/psppire-var-sheet.c:1368 src/ui/gui/compute.ui:199
msgid "Width"
msgstr "Spaltenbreite"
-#: src/ui/gui/psppire-var-sheet.c:1379
+#: src/ui/gui/psppire-var-sheet.c:1370
msgid "Decimals"
msgstr "Dezimalstellen"
-#: src/ui/gui/psppire-var-sheet.c:1383 src/ui/gui/val-labs-dialog.ui:178
+#: src/ui/gui/psppire-var-sheet.c:1374 src/ui/gui/val-labs-dialog.ui:178
msgid "Value Labels"
msgstr "Wertelabels"
-#: src/ui/gui/psppire-var-sheet.c:1386 src/ui/gui/examine.ui:398
-#: src/ui/gui/t-test.ui:88
+#: src/ui/gui/psppire-var-sheet.c:1377 src/ui/gui/examine.ui:399
+#: src/ui/gui/t-test.ui:89
msgid "Missing Values"
msgstr "Fehlende Werte"
-#: src/ui/gui/psppire-var-sheet.c:1391
+#: src/ui/gui/psppire-var-sheet.c:1382
msgid "Align"
msgstr "Ausrichtung"
-#: src/ui/gui/psppire-var-sheet.c:1397
+#: src/ui/gui/psppire-var-sheet.c:1388
msgid "Measure"
msgstr "Messniveau"
-#: src/ui/gui/psppire-var-sheet.c:1403
+#: src/ui/gui/psppire-var-sheet.c:1394
msgid "Role"
msgstr "Rolle"
-#: src/ui/gui/psppire-window.c:458
+#: src/ui/gui/psppire-window.c:457
#, c-format
msgid "Save the changes to `%s' before closing?"
msgstr "Änderungen an `%s' vor dem Schließen speichern?"
-#: src/ui/gui/psppire-window.c:465
+#: src/ui/gui/psppire-window.c:464
#, c-format
msgid "If you don't save, changes from the last %ld seconds will be permanently lost."
msgstr "Falls Sie nicht speichern, gehen die Änderungen der letzten %ld Sekunden dauerhaft verloren."
-#: src/ui/gui/psppire-window.c:469
+#: src/ui/gui/psppire-window.c:468
msgid "Close _without saving"
msgstr "Schließen _ohne Speichern"
-#: src/ui/gui/psppire-window.c:649 src/ui/gui/psppire-window.c:653
+#: src/ui/gui/psppire-window.c:648 src/ui/gui/psppire-window.c:652
msgid "Open"
msgstr "Öffnen"
-#: src/ui/gui/psppire-window.c:658
+#: src/ui/gui/psppire-window.c:657
msgid "Data and Syntax Files"
msgstr "Daten- und Syntaxdateien"
-#: src/ui/gui/psppire-window.c:667
+#: src/ui/gui/psppire-window.c:666
msgid "System Files (*.sav, *.zsav)"
msgstr "PSPP Systemdateien (*.sav, *.zsav)"
msgid "Con_fidence Interval: %2d %%"
msgstr "_Konfidenzintervall: %2d %%"
-#: src/ui/gui/val-labs-dialog.c:573
+#: src/ui/gui/val-labs-dialog.c:575
#, c-format
msgid "%s = `%s'"
msgstr "%s = `%s'"
msgid "_Test Variable List:"
msgstr "Test_variablen:"
-#: src/ui/gui/binomial.ui:144 src/ui/gui/chi-square.ui:266
+#: src/ui/gui/binomial.ui:144 src/ui/gui/chi-square.ui:265
msgid "_Get from data"
msgstr "Aus _den Daten ermitteln"
-#: src/ui/gui/binomial.ui:165 src/ui/gui/indep-samples.ui:133
+#: src/ui/gui/binomial.ui:165 src/ui/gui/indep-samples.ui:134
msgid "_Cut point:"
msgstr "_Trennwert:"
msgid "_Numeric"
msgstr "_Numerisch"
-#: src/ui/gui/compute.ui:326
+#: src/ui/gui/compute.ui:327
msgid "Compute Variable"
msgstr "Variable berechnen"
-#: src/ui/gui/compute.ui:364
+#: src/ui/gui/compute.ui:365
msgid "Target _Variable:"
msgstr "Ziel_variable:"
-#: src/ui/gui/compute.ui:395
+#: src/ui/gui/compute.ui:396
msgid "_Type & Label..."
-msgstr "Typ & _Label ..."
+msgstr "Typ & _Label..."
-#: src/ui/gui/compute.ui:452
+#: src/ui/gui/compute.ui:453
msgid "="
msgstr "="
-#: src/ui/gui/compute.ui:509
+#: src/ui/gui/compute.ui:510
msgid "_Numeric Expressions:"
msgstr "Numerischer _Ausdruck:"
-#: src/ui/gui/compute.ui:581
+#: src/ui/gui/compute.ui:582
msgid "_Functions:"
msgstr "_Funktionen:"
-#: src/ui/gui/compute.ui:661
+#: src/ui/gui/compute.ui:662
msgid "_If..."
msgstr "F_alls..."
msgid "Bivariate Correlations"
msgstr "Bivariate Korrelationen"
-#: src/ui/gui/correlation.ui:133
+#: src/ui/gui/correlation.ui:132
msgid "Pearso_n"
msgstr "_Pearson"
-#: src/ui/gui/correlation.ui:149
+#: src/ui/gui/correlation.ui:148
msgid "_Kendall's tau-b"
msgstr "_Kendalls Tau b"
-#: src/ui/gui/correlation.ui:165
+#: src/ui/gui/correlation.ui:164
msgid "_Spearman"
msgstr "_Spearman"
-#: src/ui/gui/correlation.ui:185
+#: src/ui/gui/correlation.ui:184
msgid "Correlation Coefficients"
msgstr "Korrelationskoeffizienten"
-#: src/ui/gui/correlation.ui:209
+#: src/ui/gui/correlation.ui:208
msgid "_Two-tailed"
msgstr "Z_weiseitig"
-#: src/ui/gui/correlation.ui:226
+#: src/ui/gui/correlation.ui:225
msgid "One-tai_led"
msgstr "E_inseitig"
-#: src/ui/gui/correlation.ui:247
+#: src/ui/gui/correlation.ui:246
msgid "Test of Significance"
msgstr "Signifikanztest"
-#: src/ui/gui/correlation.ui:260
+#: src/ui/gui/correlation.ui:259
msgid "_Flag significant correlations"
msgstr "Signifi_kante Korrelationen markieren"
msgid "Count Occurrences of Values within Cases"
msgstr "Häufigkeiten von Werten in den Fällen zählen"
-#: src/ui/gui/count.ui:102
+#: src/ui/gui/count.ui:101
msgid "Numeric _Variables:"
msgstr "_Numerische Variablen:"
-#: src/ui/gui/count.ui:132
+#: src/ui/gui/count.ui:131
msgid "_Target Variable:"
msgstr "_Zielvariable:"
-#: src/ui/gui/count.ui:163
+#: src/ui/gui/count.ui:162
msgid "Target _Label:"
msgstr "Ziel_label:"
-#: src/ui/gui/count.ui:177
+#: src/ui/gui/count.ui:176
msgid "_Define Values..."
msgstr "_Werte definieren..."
msgid "Comments:"
msgstr "Kommentare"
-#: src/ui/gui/comments.ui:89
+#: src/ui/gui/comments.ui:90
msgid "Display comments in output"
msgstr "Kommentare in der Ausgabe anzeigen"
-#: src/ui/gui/comments.ui:110
+#: src/ui/gui/comments.ui:111
msgid "Column Number: 0"
msgstr "Spaltennummer: 0"
msgid "Cell Display"
msgstr "Anzeige in den Zellen"
-#: src/ui/gui/crosstabs.ui:81
+#: src/ui/gui/crosstabs.ui:82
msgid "Crosstabs"
msgstr "Kreuztabellen"
-#: src/ui/gui/crosstabs.ui:132
+#: src/ui/gui/crosstabs.ui:133
msgid "_Rows"
msgstr "_Reihen"
-#: src/ui/gui/crosstabs.ui:177
+#: src/ui/gui/crosstabs.ui:178
msgid "_Columns"
msgstr "S_palten"
msgid "Ce_lls..."
msgstr "_Zellen..."
-#: src/ui/gui/crosstabs.ui:330
+#: src/ui/gui/crosstabs.ui:331
msgid "Crosstabs: Format"
msgstr "Kreuztabellen: Format"
-#: src/ui/gui/crosstabs.ui:352
+#: src/ui/gui/crosstabs.ui:353
msgid "Print tables"
msgstr "Tabellen ausgeben"
-#: src/ui/gui/crosstabs.ui:368
+#: src/ui/gui/crosstabs.ui:369
msgid "Pivot"
msgstr "Pivottabelle"
-#: src/ui/gui/crosstabs.ui:384 src/ui/gui/sort.ui:141
+#: src/ui/gui/crosstabs.ui:385 src/ui/gui/sort.ui:141
msgid "Ascending"
msgstr "Aufsteigend"
-#: src/ui/gui/crosstabs.ui:435
+#: src/ui/gui/crosstabs.ui:437
msgid "Crosstabs: Statistics"
msgstr "Kreuztabellen: Statistiken"
-#: src/ui/gui/crosstabs.ui:478 src/ui/gui/oneway.ui:451
+#: src/ui/gui/crosstabs.ui:480 src/ui/gui/oneway.ui:452
msgid "Statistics"
msgstr "Statistiken"
msgid "Test _Variables"
msgstr "_Testvariablen:"
-#: src/ui/gui/chi-square.ui:283
+#: src/ui/gui/chi-square.ui:282
msgid "Use _specified range"
msgstr "_Angegebenen Bereich verwenden"
-#: src/ui/gui/chi-square.ui:308
+#: src/ui/gui/chi-square.ui:307
msgid "_Lower:"
msgstr "_Minimum:"
-#: src/ui/gui/chi-square.ui:322
+#: src/ui/gui/chi-square.ui:321
msgid "_Upper:"
msgstr "Ma_ximum:"
-#: src/ui/gui/chi-square.ui:366
+#: src/ui/gui/chi-square.ui:365
msgid "Expected Range:"
msgstr "Erwarteter Bereich:"
-#: src/ui/gui/data-sheet.ui:51 src/ui/gui/data-editor.ui:115
-#: src/ui/gui/output-window.ui:30 src/ui/gui/syntax-editor.ui:71
-#: src/ui/gui/var-sheet.ui:35
-msgid "_Edit"
-msgstr "_Bearbeiten"
-
-#: src/ui/gui/data-sheet.ui:57 src/ui/gui/var-sheet.ui:41
-msgid "Insert Variable"
-msgstr "Variable einfügen"
-
-#: src/ui/gui/data-sheet.ui:58 src/ui/gui/var-sheet.ui:42
-msgid "Create a new variable at the current position"
-msgstr "An der aktuellen Stelle eine neue Variable einfügen"
-
-#: src/ui/gui/data-sheet.ui:65
-msgid "Insert Case"
-msgstr "_Fall einfügen"
-
-#: src/ui/gui/data-sheet.ui:66
-msgid "Create a new case at the current position"
-msgstr "An der aktuellen Stelle einen neuen Fall einfügen"
-
-#: src/ui/gui/data-sheet.ui:73 src/ui/gui/var-sheet.ui:49
-msgid "Go To Variable..."
-msgstr "_Gehe zu Variable..."
-
-#: src/ui/gui/data-sheet.ui:74 src/ui/gui/data-editor.ui:530
-#: src/ui/gui/var-sheet.ui:50
-msgid "Jump to variable"
-msgstr "Zu Variable springen"
-
-#: src/ui/gui/data-sheet.ui:80
-msgid "Go To Case..."
-msgstr "Gehe zu Fall..."
-
-#: src/ui/gui/data-sheet.ui:82
-msgid "Jump to a case in the data sheet"
-msgstr "Gehe zu Fall"
-
-#: src/ui/gui/data-sheet.ui:107 src/ui/gui/var-sheet.ui:75
-msgid "Cl_ear Variables"
-msgstr "Variabl_e löschen"
-
-#: src/ui/gui/data-sheet.ui:108 src/ui/gui/var-sheet.ui:76
-msgid "Delete the variables at the selected position(s)"
-msgstr "Die ausgewählte(n) Variable(n) löschen"
-
-#: src/ui/gui/data-sheet.ui:116
-msgid "_Clear Cases"
-msgstr "Fälle lös_chen"
-
-#: src/ui/gui/data-sheet.ui:117
-msgid "Delete the cases at the selected position(s)"
-msgstr "Lösche Fälle in den/der ausgewählten Position(en)"
-
-#: src/ui/gui/data-sheet.ui:124
-msgid "_Find..."
-msgstr "_Suchen..."
-
-#: src/ui/gui/data-sheet.ui:131
-msgid "Sort _Ascending"
-msgstr "_Aufsteigend"
-
-#: src/ui/gui/data-sheet.ui:138
-msgid "Sort _Descending"
-msgstr "A_bsteigend"
-
-#: src/ui/gui/descriptives.ui:116 src/ui/gui/factor.ui:776
-#: src/ui/gui/recode.ui:619
+#: src/ui/gui/descriptives.ui:115 src/ui/gui/factor.ui:779
+#: src/ui/gui/recode.ui:621
msgid "_Variables:"
msgstr "_Variablen:"
-#: src/ui/gui/descriptives.ui:161
+#: src/ui/gui/descriptives.ui:160
msgid "S_tatistics:"
msgstr "_Statistiken:"
-#: src/ui/gui/descriptives.ui:215
+#: src/ui/gui/descriptives.ui:214
msgid "_Exclude entire case if any selected variable is missing"
msgstr "_Ausschluss des gesamten Falls, wenn eine der gewählten Variablen fehlt "
-#: src/ui/gui/descriptives.ui:232
+#: src/ui/gui/descriptives.ui:231
msgid "_Include user-missing data in analysis"
msgstr "_Benutzerdefiniert fehlende Werte in Analyse mit einschließen"
-#: src/ui/gui/descriptives.ui:249
+#: src/ui/gui/descriptives.ui:248
msgid "Save _Z-scores of selected variables as new variables"
msgstr "_Z-Werte der gewählten Variablen als neue Variablen speichern"
-#: src/ui/gui/descriptives.ui:271
+#: src/ui/gui/descriptives.ui:270
msgid "Options:"
msgstr "Optionen:"
msgid "_Dependent List:"
msgstr "Liste der ab_hängigen Variablen"
-#: src/ui/gui/examine.ui:314
+#: src/ui/gui/examine.ui:315
msgid "Explore: Options"
msgstr "Explorative Datenanalyse: Optionen"
-#: src/ui/gui/examine.ui:337 src/ui/gui/t-test.ui:64
+#: src/ui/gui/examine.ui:338 src/ui/gui/t-test.ui:65
msgid "Exclude cases _listwise"
msgstr "_Listenweiser Fallausschluss"
-#: src/ui/gui/examine.ui:355
+#: src/ui/gui/examine.ui:356
msgid "Exclude cases _pairwise"
msgstr "_Paarweiser Fallausschluss"
-#: src/ui/gui/examine.ui:374
+#: src/ui/gui/examine.ui:375
msgid "_Report values"
msgstr "W_erte einbeziehen"
-#: src/ui/gui/examine.ui:430
+#: src/ui/gui/examine.ui:432
msgid "Explore: Statistics"
msgstr "Explorative Datenanalyse: Statistiken"
-#: src/ui/gui/examine.ui:448 src/ui/gui/oneway.ui:412
+#: src/ui/gui/examine.ui:450 src/ui/gui/oneway.ui:413
msgid "_Descriptives"
msgstr "_Deskriptive"
-#: src/ui/gui/examine.ui:465
+#: src/ui/gui/examine.ui:467
msgid "_Extremes"
msgstr "_Ausreißer"
-#: src/ui/gui/examine.ui:482
+#: src/ui/gui/examine.ui:484
msgid "_Percentiles"
msgstr "_Perzentile"
msgid "_Display rotated solution"
msgstr "_Rotierte Lösung anzeigen"
-#: src/ui/gui/factor.ui:164 src/ui/gui/factor.ui:563
+#: src/ui/gui/factor.ui:164 src/ui/gui/factor.ui:564
msgid "Ma_ximum iterations for convergence:"
msgstr "Ma_ximale Anzahl der Iterationsschritte für Konvergenz:"
-#: src/ui/gui/factor.ui:223 src/ui/gui/factor.ui:237
+#: src/ui/gui/factor.ui:224 src/ui/gui/factor.ui:238
msgid "Principal Components Analysis"
msgstr "Hauptkomponentenanalyse"
-#: src/ui/gui/factor.ui:228 src/ui/gui/factor.ui:240
+#: src/ui/gui/factor.ui:229 src/ui/gui/factor.ui:241
msgid "Principal Axis Factoring"
msgstr "Hauptachsen-Faktorenanalyse"
-#: src/ui/gui/factor.ui:246
+#: src/ui/gui/factor.ui:247
msgid "Factor Analysis: Extraction"
msgstr "Faktorenanalyse: Extraktion"
-#: src/ui/gui/factor.ui:271
+#: src/ui/gui/factor.ui:272
msgid "_Method: "
msgstr "_Methode:"
-#: src/ui/gui/factor.ui:326
+#: src/ui/gui/factor.ui:327
msgid "Co_rrelation matrix"
msgstr "_Korrelationsmatrix"
-#: src/ui/gui/factor.ui:342
+#: src/ui/gui/factor.ui:343
msgid "Co_variance matrix"
msgstr "Ko_varianzmatrix"
-#: src/ui/gui/factor.ui:363
+#: src/ui/gui/factor.ui:364
msgid "Analyze"
msgstr "Analysieren"
-#: src/ui/gui/factor.ui:388
+#: src/ui/gui/factor.ui:389
msgid "_Unrotated factor solution"
msgstr "Nicht _rotierte Faktorlösung"
-#: src/ui/gui/factor.ui:404
+#: src/ui/gui/factor.ui:405
msgid "_Scree plot"
msgstr "_Screeplot"
-#: src/ui/gui/factor.ui:424 src/ui/gui/histogram.ui:130 src/ui/gui/roc.ui:313
+#: src/ui/gui/factor.ui:425 src/ui/gui/histogram.ui:130 src/ui/gui/roc.ui:313
msgid "Display"
msgstr "Anzeige"
-#: src/ui/gui/factor.ui:507
+#: src/ui/gui/factor.ui:508
msgid "_Number of factors:"
msgstr "_Anzahl der Faktoren:"
-#: src/ui/gui/factor.ui:544
+#: src/ui/gui/factor.ui:545
msgid "Extract"
msgstr "Extrahieren"
-#: src/ui/gui/factor.ui:620
+#: src/ui/gui/factor.ui:622
msgid "Factor Analysis"
msgstr "Faktorenanalyse"
-#: src/ui/gui/factor.ui:651 src/ui/gui/data-editor.ui:312
+#: src/ui/gui/factor.ui:654 src/ui/gui/data-editor.ui:250
msgid "_Descriptives..."
msgstr "_Deskriptive Statistiken..."
-#: src/ui/gui/factor.ui:664
+#: src/ui/gui/factor.ui:667
msgid "_Extraction..."
msgstr "E_xtraktion..."
-#: src/ui/gui/factor.ui:678
+#: src/ui/gui/factor.ui:681
msgid "_Rotations..."
msgstr "Ro_tation..."
msgid "If no _more than "
msgstr "_Wenn nicht mehr als "
-#: src/ui/gui/frequencies.ui:112 src/ui/gui/frequencies.ui:435
+#: src/ui/gui/frequencies.ui:112 src/ui/gui/frequencies.ui:436
msgid "100"
msgstr "100"
msgid "Order by"
msgstr "Sortieren nach"
-#: src/ui/gui/frequencies.ui:306
+#: src/ui/gui/frequencies.ui:307
msgid "Frequencies: Charts"
msgstr "Häufigkeiten: Diagramme"
-#: src/ui/gui/frequencies.ui:337
+#: src/ui/gui/frequencies.ui:338
msgid "Scale:"
msgstr "Skala:"
-#: src/ui/gui/frequencies.ui:347
+#: src/ui/gui/frequencies.ui:348
msgid "_Frequencies"
msgstr "_Häufigkeiten"
-#: src/ui/gui/frequencies.ui:364
+#: src/ui/gui/frequencies.ui:365
msgid "_Percentages"
msgstr "_Prozentwerte"
-#: src/ui/gui/frequencies.ui:388
+#: src/ui/gui/frequencies.ui:389
msgid "Exclude values _below "
msgstr "Ausschließen von Werten _unter "
-#: src/ui/gui/frequencies.ui:403
+#: src/ui/gui/frequencies.ui:404
msgid "Exclude values _above "
msgstr "Ausschließen von Werten _über "
-#: src/ui/gui/frequencies.ui:422 src/ui/gui/reliability.ui:212
+#: src/ui/gui/frequencies.ui:423 src/ui/gui/reliability.ui:211
msgid "0"
msgstr "0"
-#: src/ui/gui/frequencies.ui:450
+#: src/ui/gui/frequencies.ui:451
msgid "<b>Chart Formatting</b>"
msgstr "<b>Diagrammformat</b>"
-#: src/ui/gui/frequencies.ui:475
+#: src/ui/gui/frequencies.ui:476
msgid "Draw _histograms"
msgstr "_Histogramme zeichnen"
-#: src/ui/gui/frequencies.ui:491
+#: src/ui/gui/frequencies.ui:492
msgid "Superimpose _normal curve"
msgstr "_Normalverteilungskurve anzeigen"
-#: src/ui/gui/frequencies.ui:511
+#: src/ui/gui/frequencies.ui:512
msgid "<b>Histograms</b>"
msgstr "<b>Histogramme</b>"
-#: src/ui/gui/frequencies.ui:536
+#: src/ui/gui/frequencies.ui:537
msgid "Draw _bar charts"
msgstr "_Balkendiagramm zeichnen"
-#: src/ui/gui/frequencies.ui:556
+#: src/ui/gui/frequencies.ui:557
msgid "<b>Bar Charts</b>"
msgstr "<b>Balkendiagramme</b>"
-#: src/ui/gui/frequencies.ui:581
+#: src/ui/gui/frequencies.ui:582
msgid "Draw _pie charts"
msgstr "_Kreisdiagramm zeichnen"
-#: src/ui/gui/frequencies.ui:597
+#: src/ui/gui/frequencies.ui:598
msgid "Include slices for _missing values"
msgstr "_Segmente für fehlende Werte einfügen"
-#: src/ui/gui/frequencies.ui:617
+#: src/ui/gui/frequencies.ui:618
msgid "<b>Pie Charts</b>"
msgstr "<b>Kreisdiagramme</b>"
-#: src/ui/gui/frequencies.ui:705 src/ui/gui/rank.ui:471
+#: src/ui/gui/frequencies.ui:707 src/ui/gui/rank.ui:472
msgid "_Variable(s):"
msgstr "_Variable(n):"
-#: src/ui/gui/frequencies.ui:749
+#: src/ui/gui/frequencies.ui:751
msgid "_Statistics:"
msgstr "_Statistiken:"
-#: src/ui/gui/frequencies.ui:763
+#: src/ui/gui/frequencies.ui:765
msgid "Include _missing values"
msgstr "_Fehlende Werte mit einschließen"
-#: src/ui/gui/frequencies.ui:786
+#: src/ui/gui/frequencies.ui:788
msgid "Ch_arts..."
msgstr "_Diagramme..."
-#: src/ui/gui/frequencies.ui:801
+#: src/ui/gui/frequencies.ui:803
msgid "Frequency _Tables..."
msgstr "_Häufigkeitstabellen..."
msgid "_Display normal curve"
msgstr "_Normalverteilungskurve anzeigen"
-#: src/ui/gui/indep-samples.ui:9
+#: src/ui/gui/indep-samples.ui:9 src/ui/gui/k-independent.ui:19
msgid "Define Groups"
msgstr "Gruppenvariable"
-#: src/ui/gui/indep-samples.ui:58
+#: src/ui/gui/indep-samples.ui:59
msgid "Group_2 value:"
msgstr "Wert Gruppe_2:"
-#: src/ui/gui/indep-samples.ui:72
+#: src/ui/gui/indep-samples.ui:73
msgid "Group_1 value:"
msgstr "Wert Gruppe_1:"
-#: src/ui/gui/indep-samples.ui:173
+#: src/ui/gui/indep-samples.ui:174
msgid "_Use specified values:"
msgstr "_Angegebene Werte verwenden:"
-#: src/ui/gui/indep-samples.ui:241
+#: src/ui/gui/indep-samples.ui:243
msgid "Independent-Samples T Test"
msgstr "T-Test bei unabhängigen Stichproben"
-#: src/ui/gui/indep-samples.ui:300
+#: src/ui/gui/indep-samples.ui:303
msgid "_Define Groups..."
msgstr "Gruppen _definieren"
-#: src/ui/gui/indep-samples.ui:382 src/ui/gui/t-test.ui:191
+#: src/ui/gui/indep-samples.ui:385 src/ui/gui/t-test.ui:195
msgid "_Test Variable(s):"
msgstr "_Testvariable(n):"
-#: src/ui/gui/indep-samples.ui:435
+#: src/ui/gui/indep-samples.ui:438 src/ui/gui/k-independent.ui:148
msgid "_Grouping Variable:"
msgstr "_Gruppenvariable:"
+#: src/ui/gui/k-independent.ui:46
+msgid "_Upper limit:"
+msgstr "Ma_ximum:"
+
+#: src/ui/gui/k-independent.ui:60
+msgid "_Lower limit:"
+msgstr "_Minimum:"
+
+#: src/ui/gui/k-independent.ui:120
+msgid "Tests for Several Independent Samples"
+msgstr "Tests für mehreren unabhängige Stichproben"
+
+#: src/ui/gui/k-independent.ui:191 src/ui/gui/ks-one-sample.ui:115
+msgid "Test _Variable List:"
+msgstr "_Testvariablen:"
+
+#: src/ui/gui/k-independent.ui:303
+msgid "_Define Groups"
+msgstr "Gruppenvariable"
+
+#: src/ui/gui/k-independent.ui:348
+msgid "_Kruskal-Wallis H"
+msgstr "_Kruskal-Wallis H"
+
+#: src/ui/gui/k-independent.ui:365 src/ui/gui/runs.ui:124
+msgid "_Median"
+msgstr "_Median"
+
#: src/ui/gui/k-means.ui:8
msgid "K-Means Cluster Analysis"
msgstr "k-Means Clusteranalyse"
msgid "Tests for Several Related Samples"
msgstr "Tests für mehreren verbundenen Stichproben"
-#: src/ui/gui/k-related.ui:97
+#: src/ui/gui/k-related.ui:96
msgid "_Test Variables:"
msgstr "Test_variablen:"
-#: src/ui/gui/k-related.ui:129
+#: src/ui/gui/k-related.ui:128
msgid "_Friedman"
msgstr "Frie_dman"
-#: src/ui/gui/k-related.ui:145
+#: src/ui/gui/k-related.ui:144
msgid "_Kendall's W"
msgstr "Kendall-_W"
-#: src/ui/gui/k-related.ui:161
+#: src/ui/gui/k-related.ui:160
msgid "_Cochran's Q"
msgstr "_Cochran-Q"
-#: src/ui/gui/ks-one-sample.ui:116
-msgid "Test _Variable List:"
-msgstr "_Testvariablen:"
-
-#: src/ui/gui/ks-one-sample.ui:148
+#: src/ui/gui/ks-one-sample.ui:147
msgid "_Normal"
msgstr "_Normalverteilung"
-#: src/ui/gui/ks-one-sample.ui:166
+#: src/ui/gui/ks-one-sample.ui:165
msgid "_Poisson"
msgstr "_Poisson"
-#: src/ui/gui/ks-one-sample.ui:183
+#: src/ui/gui/ks-one-sample.ui:182
msgid "_Uniform"
msgstr "_Gleichverteilung"
-#: src/ui/gui/ks-one-sample.ui:198
+#: src/ui/gui/ks-one-sample.ui:197
msgid "_Exponential"
msgstr "_Exponential"
-#: src/ui/gui/ks-one-sample.ui:217
+#: src/ui/gui/ks-one-sample.ui:216
msgid "Test Distribution"
msgstr "Zu testende Verteilung"
msgid "Include _constant in model"
msgstr "K_onstante in Modell einschließen"
-#: src/ui/gui/logistic.ui:201
+#: src/ui/gui/logistic.ui:202
msgid "Logistic Regression"
msgstr "Logistische Regression"
-#: src/ui/gui/logistic.ui:228
-msgid "_Options..."
-msgstr "_Optionen..."
-
-#: src/ui/gui/logistic.ui:243 src/ui/gui/regression.ui:50
-#: src/ui/gui/syntax-editor.ui:45
-msgid "_Save..."
-msgstr "Speichern..."
-
-#: src/ui/gui/logistic.ui:346 src/ui/gui/regression.ui:169
+#: src/ui/gui/logistic.ui:347 src/ui/gui/regression.ui:169
msgid "_Dependent"
msgstr "_Abhängige Variable"
-#: src/ui/gui/logistic.ui:394 src/ui/gui/regression.ui:216
+#: src/ui/gui/logistic.ui:395 src/ui/gui/regression.ui:216
msgid "_Independent"
msgstr "_Unabhängige Variable(n)"
msgid "_No missing values"
msgstr "Kei_ne fehlenden Werte"
-#: src/ui/gui/missing-val-dialog.ui:119
+#: src/ui/gui/missing-val-dialog.ui:120
msgid "_Discrete missing values"
msgstr "_Einzelne fehlende Werte"
-#: src/ui/gui/missing-val-dialog.ui:155
+#: src/ui/gui/missing-val-dialog.ui:156
msgid "_Low:"
msgstr "_Kleinster Wert:"
-#: src/ui/gui/missing-val-dialog.ui:180
+#: src/ui/gui/missing-val-dialog.ui:181
msgid "_High:"
msgstr "_Größter Wert:"
-#: src/ui/gui/missing-val-dialog.ui:204
+#: src/ui/gui/missing-val-dialog.ui:205
msgid "Di_screte value:"
msgstr "Ein_zelner Wert:"
-#: src/ui/gui/missing-val-dialog.ui:228
+#: src/ui/gui/missing-val-dialog.ui:229
msgid "_Range plus one optional discrete missing value"
msgstr "_Bereich und einzelner fehlender Wert"
msgid "Contrast 1 of 1"
msgstr "Kontrast 1 von 1"
-#: src/ui/gui/oneway.ui:215
+#: src/ui/gui/oneway.ui:216
msgid "One-Way ANOVA"
msgstr "Einfaktorielle ANOVA"
-#: src/ui/gui/oneway.ui:244
+#: src/ui/gui/oneway.ui:245
msgid "_Factor:"
msgstr "Fak_tor:"
-#: src/ui/gui/oneway.ui:287
+#: src/ui/gui/oneway.ui:288
msgid "Dependent _Variable(s):"
msgstr "_Abhängige Variable(n):"
-#: src/ui/gui/oneway.ui:429
+#: src/ui/gui/oneway.ui:430
msgid "_Homogeneity"
msgstr "_Homogenität"
-#: src/ui/gui/oneway.ui:471
+#: src/ui/gui/oneway.ui:472
msgid "_Contrasts..."
msgstr "_Kontraste..."
-#: src/ui/gui/paired-samples.ui:130
+#: src/ui/gui/options.ui:9
+msgid "Options Case"
+msgstr "Optionen"
+
+#: src/ui/gui/options.ui:39
+msgid "Display _Labels"
+msgstr "Zeige _Wertelabels"
+
+#: src/ui/gui/options.ui:55
+msgid "Display _Names"
+msgstr "Zeige _Namen"
+
+#: src/ui/gui/options.ui:83
+msgid "Sort by L_abel"
+msgstr "Sortieren nach L_abel"
+
+#: src/ui/gui/options.ui:99
+msgid "Sort by Na_me"
+msgstr "Sortieren nach Na_me"
+
+#: src/ui/gui/options.ui:115
+msgid "Do not S_ort"
+msgstr "Nicht S_ortieren"
+
+#: src/ui/gui/options.ui:143
+msgid "Variable Lists"
+msgstr "Variablenlisten"
+
+#: src/ui/gui/options.ui:168
+msgid "Ma_ximize"
+msgstr "Ma_ximieren"
+
+#: src/ui/gui/options.ui:183
+msgid "_Raise"
+msgstr "_Erhöhen"
+
+#: src/ui/gui/options.ui:198
+msgid "Aler_t"
+msgstr "_Warnung"
+
+#: src/ui/gui/options.ui:217
+msgid "Output Window Action"
+msgstr "Ausgabe Fenster"
+
+#: src/ui/gui/paired-samples.ui:131
msgid "_Test Pair(s):"
msgstr "_Variablenpaar(e):"
msgid "Proportion Estimation Formula"
msgstr "Formel für Anteilsschätzung"
-#: src/ui/gui/rank.ui:351
+#: src/ui/gui/rank.ui:352
msgid "Rank Cases"
msgstr "Rangfolge bilden"
-#: src/ui/gui/rank.ui:416
+#: src/ui/gui/rank.ui:417
msgid "_By:"
msgstr "_Schritt:"
-#: src/ui/gui/rank.ui:577
+#: src/ui/gui/rank.ui:578
msgid "_Smallest Value"
msgstr "Kleinste_m Wert"
-#: src/ui/gui/rank.ui:595
+#: src/ui/gui/rank.ui:596
msgid "_Largest Value"
msgstr "_Größtem Wert"
-#: src/ui/gui/rank.ui:619
+#: src/ui/gui/rank.ui:620
msgid "Assign rank 1 to:"
msgstr "Rang 1 zuweisen:"
-#: src/ui/gui/rank.ui:638
+#: src/ui/gui/rank.ui:639
msgid "_Display summary tables"
msgstr "Z_usammenfassungen anzeigen"
-#: src/ui/gui/rank.ui:661
+#: src/ui/gui/rank.ui:662
msgid "Rank T_ypes"
msgstr "Rang_typen"
-#: src/ui/gui/rank.ui:676
+#: src/ui/gui/rank.ui:677
msgid "_Ties..."
msgstr "Rang_bedingungen"
-#: src/ui/gui/rank.ui:737
+#: src/ui/gui/rank.ui:739
msgid "Rank Cases: Ties"
msgstr "Rangfolge bilden: Rangbedienungen"
-#: src/ui/gui/rank.ui:768
+#: src/ui/gui/rank.ui:770
msgid "_Mean"
msgstr "_Mittelwert"
-#: src/ui/gui/rank.ui:786
+#: src/ui/gui/rank.ui:788
msgid "_Low"
msgstr "Mi_nimum"
-#: src/ui/gui/rank.ui:805
+#: src/ui/gui/rank.ui:807
msgid "_High"
msgstr "Ma_ximum"
-#: src/ui/gui/rank.ui:831
+#: src/ui/gui/rank.ui:833
msgid "_Sequential ranks to unique values"
msgstr "_Ränge fortlaufend vergeben"
-#: src/ui/gui/rank.ui:855
+#: src/ui/gui/rank.ui:857
msgid "Rank Assigned to Ties"
msgstr "Zugewiesener Rang bein Rangbedingungen"
-#: src/ui/gui/runs.ui:125
-msgid "_Median"
-msgstr "_Median"
-
-#: src/ui/gui/runs.ui:140
+#: src/ui/gui/runs.ui:139
msgid "M_ean"
msgstr "Mittel_wert"
-#: src/ui/gui/runs.ui:156
+#: src/ui/gui/runs.ui:155
msgid "Mo_de"
msgstr "Mo_dalwert"
-#: src/ui/gui/runs.ui:176
+#: src/ui/gui/runs.ui:175
msgid "_Custom:"
msgstr "_Benutzerdefiniert:"
-#: src/ui/gui/runs.ui:215
+#: src/ui/gui/runs.ui:214
msgid "Cut Point"
msgstr "Trennwert"
msgid "Width: "
msgstr "Breite:"
-#: src/ui/gui/recode.ui:480
+#: src/ui/gui/recode.ui:482
msgid "_Name:"
msgstr "_Name:"
-#: src/ui/gui/recode.ui:508
+#: src/ui/gui/recode.ui:510
msgid "La_bel:"
msgstr "_Beschriftung:"
-#: src/ui/gui/recode.ui:537
+#: src/ui/gui/recode.ui:539
msgid "Chan_ge"
msgstr "_Ändern"
-#: src/ui/gui/recode.ui:565
+#: src/ui/gui/recode.ui:567
msgid "Output Variable"
msgstr "Ausgabevariable"
-#: src/ui/gui/recode.ui:639
+#: src/ui/gui/recode.ui:641
msgid "Old and New Va_lues..."
msgstr "Alte und neue _Werte"
msgid "S_tatistics..."
msgstr "_Statistiken..."
-#: src/ui/gui/regression.ui:255
+#: src/ui/gui/regression.ui:256
msgid "Regression: Save"
msgstr "Lineare Regression: Speichern"
-#: src/ui/gui/regression.ui:272 src/ui/gui/univariate.ui:26
+#: src/ui/gui/regression.ui:273 src/ui/gui/univariate.ui:26
msgid "_Predicted values"
msgstr "_Vorhergesagte Werte"
-#: src/ui/gui/regression.ui:289 src/ui/gui/univariate.ui:43
+#: src/ui/gui/regression.ui:290 src/ui/gui/univariate.ui:43
msgid "_Residuals"
msgstr "_Residuen"
-#: src/ui/gui/regression.ui:332
+#: src/ui/gui/regression.ui:334
msgid "Regression: Statistics"
msgstr "Lineare Regression: Statistiken"
-#: src/ui/gui/regression.ui:373 src/ui/gui/univariate.ui:126
+#: src/ui/gui/regression.ui:375 src/ui/gui/univariate.ui:127
msgid "S_tatistics"
msgstr "_Statistiken"
msgid "Reliability Analysis"
msgstr "Reliabilitätsanalyse"
-#: src/ui/gui/reliability.ui:129
+#: src/ui/gui/reliability.ui:128
msgid "_Items:"
msgstr "I_tems:"
-#: src/ui/gui/reliability.ui:151
+#: src/ui/gui/reliability.ui:150
msgid "_Model: "
msgstr "_Modell:\t"
-#: src/ui/gui/reliability.ui:197
+#: src/ui/gui/reliability.ui:196
msgid "_Variables in first split:"
msgstr "_Variablen in der ersten Hälfte:"
-#: src/ui/gui/reliability.ui:244
+#: src/ui/gui/reliability.ui:243
msgid "Show _descriptives for scale if item is deleted"
msgstr "_Deskriptive Statistiken für Skala anzeigen, wenn das Item gelöscht wurde"
msgid "Observation"
msgstr "Beobachtung"
-#: src/ui/gui/select-cases.ui:144
+#: src/ui/gui/select-cases.ui:145
msgid "Select Cases"
msgstr "Fälle auswählen"
-#: src/ui/gui/select-cases.ui:296
+#: src/ui/gui/select-cases.ui:297
msgid "Use filter variable"
msgstr "Filtervariable verwenden"
-#: src/ui/gui/select-cases.ui:363
+#: src/ui/gui/select-cases.ui:364
msgid "Based on time or case range"
msgstr "Nach Zeit oder Fallbereich"
-#: src/ui/gui/select-cases.ui:378
+#: src/ui/gui/select-cases.ui:379
msgid "Range..."
msgstr "Bereich..."
-#: src/ui/gui/select-cases.ui:427
+#: src/ui/gui/select-cases.ui:428
msgid "Random sample of cases"
msgstr "Zufallsstichprobe aus den Fällen"
-#: src/ui/gui/select-cases.ui:443
+#: src/ui/gui/select-cases.ui:444
msgid "Sample..."
msgstr "Stichprobe..."
-#: src/ui/gui/select-cases.ui:491
+#: src/ui/gui/select-cases.ui:492
msgid "If condition is satisfied"
msgstr "Wenn Bedingung erfüllt ist"
-#: src/ui/gui/select-cases.ui:506
+#: src/ui/gui/select-cases.ui:507
msgid "If..."
msgstr "Falls..."
-#: src/ui/gui/select-cases.ui:550
+#: src/ui/gui/select-cases.ui:551
msgid "All Cases"
msgstr "Alle Fälle"
-#: src/ui/gui/select-cases.ui:564
+#: src/ui/gui/select-cases.ui:565
msgid "Select"
msgstr "Auswahl"
-#: src/ui/gui/select-cases.ui:591
+#: src/ui/gui/select-cases.ui:592
msgid "Filtered"
msgstr "Filtern"
-#: src/ui/gui/select-cases.ui:608
+#: src/ui/gui/select-cases.ui:609
msgid "Deleted"
msgstr "Löschen"
-#: src/ui/gui/select-cases.ui:630
+#: src/ui/gui/select-cases.ui:631
msgid "Unselected Cases Are"
msgstr "Nicht gewählte Fälle"
-#: src/ui/gui/select-cases.ui:676
+#: src/ui/gui/select-cases.ui:678
msgid "Select Cases: Random Sample"
msgstr "Fälle auswählen: Zufallsstichprobe"
-#: src/ui/gui/select-cases.ui:738
+#: src/ui/gui/select-cases.ui:740
msgid "Sample Size"
msgstr "Stichprobengröße"
msgid "Options"
msgstr "Optionen"
-#: src/ui/gui/t-test.ui:46
+#: src/ui/gui/t-test.ui:47
msgid "Exclude cases _analysis by analysis"
msgstr "Fallau_sschluss Test für Test"
-#: src/ui/gui/t-test.ui:130
+#: src/ui/gui/t-test.ui:132
msgid "One - Sample T Test"
msgstr "T-Test bei einer Stichprobe"
-#: src/ui/gui/t-test.ui:245
+#: src/ui/gui/t-test.ui:249
msgid "Test _Value: "
msgstr "Test_wert:"
msgid "Univariate: Save"
msgstr "Univariat: Speichern"
-#: src/ui/gui/univariate.ui:86
+#: src/ui/gui/univariate.ui:87
msgid "Univariate: Statistics"
msgstr "Univariat: Statistiken"
-#: src/ui/gui/univariate.ui:160
+#: src/ui/gui/univariate.ui:162
msgid "Univariate"
msgstr "Univariat"
-#: src/ui/gui/univariate.ui:264
+#: src/ui/gui/univariate.ui:265
msgid "_Dependent Variable"
msgstr "_Abhängige Variable"
-#: src/ui/gui/univariate.ui:312
+#: src/ui/gui/univariate.ui:313
msgid "_Fixed Factors"
msgstr "F_este Faktoren"
msgid "Value Label:"
msgstr "Wertelabel:"
-#: src/ui/gui/data-editor.ui:9 src/ui/gui/output-window.ui:9
-#: src/ui/gui/syntax-editor.ui:10
-msgid "_File"
-msgstr "_Datei"
-
-#: src/ui/gui/data-editor.ui:15 src/ui/gui/syntax-editor.ui:17
-msgid "_New..."
-msgstr "_Neu..."
-
-#: src/ui/gui/data-editor.ui:23 src/ui/gui/syntax-editor.ui:24
-msgid "_Syntax"
-msgstr "_Syntax"
-
-#: src/ui/gui/data-editor.ui:30 src/ui/gui/data-editor.ui:156
-#: src/ui/gui/data-editor.ui:169 src/ui/gui/syntax-editor.ui:31
-msgid "_Data"
-msgstr "_Daten"
-
-#: src/ui/gui/data-editor.ui:37 src/ui/gui/syntax-editor.ui:38
-msgid "_Open..."
-msgstr "Ö_ffnen..."
-
-#: src/ui/gui/data-editor.ui:44
-msgid "I_mport Data..."
-msgstr "Daten importieren..."
-
-#: src/ui/gui/data-editor.ui:51
-msgid "_Rename Dataset..."
-msgstr "_Datenblatt umbenennen..."
-
-#: src/ui/gui/data-editor.ui:59
-msgid "_Save"
-msgstr "Speichern"
-
-#: src/ui/gui/data-editor.ui:67 src/ui/gui/syntax-editor.ui:52
-msgid "Save _As..."
-msgstr "Speichern _unter..."
-
-#: src/ui/gui/data-editor.ui:74
-msgid "D_isplay Data File Information"
-msgstr "_Informationen zur Arbeitsdatei anzeigen"
+#: src/ui/gui/data-editor.ui:17
+msgid "Information Area"
+msgstr "Informationsbereich"
-#: src/ui/gui/data-editor.ui:81
-msgid "Working File"
-msgstr "Arbeitsdatei"
+#: src/ui/gui/data-editor.ui:39
+msgid "Case Counter Area"
+msgstr "Status der verarbeiteten Fälle"
-#: src/ui/gui/data-editor.ui:88
-msgid "External File..."
-msgstr "Externe Datei..."
+#: src/ui/gui/data-editor.ui:64
+msgid "Filter Use Status Area"
+msgstr "Status der Fallauswahl"
-#: src/ui/gui/data-editor.ui:95
-msgid "Recently Used Da_ta"
-msgstr "_Zuletzt verwendete Daten"
+#: src/ui/gui/data-editor.ui:90
+msgid "Weight Status Area"
+msgstr "Status der Fallgewichtung"
-#: src/ui/gui/data-editor.ui:102
-msgid "Recently Used _Files"
-msgstr "Z_uletzt verwendete Dateien"
+#: src/ui/gui/data-editor.ui:116
+msgid "Split File Status Area"
+msgstr "Status der Dateiaufteilung"
-#: src/ui/gui/data-editor.ui:121
+#: src/ui/gui/data-editor.ui:138
msgid "_View"
msgstr "A_nsicht"
-#: src/ui/gui/data-editor.ui:128
+#: src/ui/gui/data-editor.ui:141
msgid "_Status Bar"
msgstr "_Statusleiste"
-#: src/ui/gui/data-editor.ui:135
+#: src/ui/gui/data-editor.ui:147
msgid "_Font..."
msgstr "S_chriftart..."
-#: src/ui/gui/data-editor.ui:142
+#: src/ui/gui/data-editor.ui:151
msgid "_Grid Lines"
msgstr "_Gitterlinien"
-#: src/ui/gui/data-editor.ui:148
+#: src/ui/gui/data-editor.ui:155
msgid "Value _Labels"
msgstr "_Wertelabels"
-#: src/ui/gui/data-editor.ui:149
-msgid "Show/hide value labels"
-msgstr "Ein- / Ausblenden der Wertelabels"
-
-#: src/ui/gui/data-editor.ui:162
+#: src/ui/gui/data-editor.ui:166
msgid "_Variables"
msgstr "V_ariablen"
-#: src/ui/gui/data-editor.ui:174
+#: src/ui/gui/data-editor.ui:176
msgid "_Sort Cases..."
msgstr "Fälle s_ortieren..."
-#: src/ui/gui/data-editor.ui:178
-msgid "Sort cases in the active dataset"
-msgstr "Sortieren der Fälle im aktiven Datenblatt"
-
-#: src/ui/gui/data-editor.ui:186
+#: src/ui/gui/data-editor.ui:180
msgid "_Transpose..."
msgstr "Trans_ponieren..."
-#: src/ui/gui/data-editor.ui:187
-msgid "Transpose the cases with the variables"
-msgstr "Transponiert die Fälle mit den Variablen"
-
-#: src/ui/gui/data-editor.ui:195
+#: src/ui/gui/data-editor.ui:184
msgid "_Aggregate..."
msgstr "_Aggregieren..."
-#: src/ui/gui/data-editor.ui:196
-msgid "Aggregate the case values into a new variable"
-msgstr "Zusammenführung der Werte in einer neuen Variable"
-
-#: src/ui/gui/data-editor.ui:203
+#: src/ui/gui/data-editor.ui:190
msgid "S_plit File..."
msgstr "Datei aufte_ilen..."
-#: src/ui/gui/data-editor.ui:204
-msgid "Split the active dataset"
-msgstr "Datei aufteilen"
-
-#: src/ui/gui/data-editor.ui:212
+#: src/ui/gui/data-editor.ui:194
msgid "Select _Cases..."
msgstr "Fälle au_swählen..."
-#: src/ui/gui/data-editor.ui:213
-msgid "Choose a subset of cases for analysis"
-msgstr "Wählen Sie einen Teil der Fälle zur Analyse aus"
-
-#: src/ui/gui/data-editor.ui:220
+#: src/ui/gui/data-editor.ui:198
msgid "_Weight Cases..."
msgstr "Fä_lle gewichten..."
-#: src/ui/gui/data-editor.ui:222
-msgid "Weight cases by variable"
-msgstr "Fälle anhand einer Variable gewichten"
-
-#: src/ui/gui/data-editor.ui:229
+#: src/ui/gui/data-editor.ui:204
msgid "_Transform"
msgstr "T_ransformieren"
-#: src/ui/gui/data-editor.ui:236
+#: src/ui/gui/data-editor.ui:207
msgid "_Compute..."
msgstr "Varia_ble berechnen..."
-#: src/ui/gui/data-editor.ui:244
+#: src/ui/gui/data-editor.ui:211
msgid "Cou_nt..."
msgstr "Werte in Fällen _zählen..."
-#: src/ui/gui/data-editor.ui:252
+#: src/ui/gui/data-editor.ui:215
msgid "Ran_k Cases..."
msgstr "Ran_gfolge bilden..."
-#: src/ui/gui/data-editor.ui:260
+#: src/ui/gui/data-editor.ui:219
msgid "Auto_matic Recode..."
msgstr "_Automatisches Umkodieren..."
-#: src/ui/gui/data-editor.ui:268
+#: src/ui/gui/data-editor.ui:225
msgid "Recode into _Same Variables..."
msgstr "Umko_dieren in dieselbe Variable..."
-#: src/ui/gui/data-editor.ui:276
+#: src/ui/gui/data-editor.ui:229
msgid "Recode into _Different Variables..."
msgstr "_Umkodieren in andere Variable..."
-#: src/ui/gui/data-editor.ui:283
+#: src/ui/gui/data-editor.ui:235
msgid "_Run Pending Transforms"
msgstr "Offene _Transformationen ausführen"
-#: src/ui/gui/data-editor.ui:291
+#: src/ui/gui/data-editor.ui:241
msgid "_Analyze"
msgstr "Anal_ysieren"
-#: src/ui/gui/data-editor.ui:297
+#: src/ui/gui/data-editor.ui:244
msgid "_Descriptive Statistics"
msgstr "D_eskriptive Statistiken"
-#: src/ui/gui/data-editor.ui:305
+#: src/ui/gui/data-editor.ui:246
msgid "_Frequencies..."
msgstr "_Häufigkeiten..."
-#: src/ui/gui/data-editor.ui:319
+#: src/ui/gui/data-editor.ui:254
msgid "_Explore..."
msgstr "_Explorative Datenanalyse..."
-#: src/ui/gui/data-editor.ui:326
+#: src/ui/gui/data-editor.ui:258
msgid "_Crosstabs..."
msgstr "_Kreuztabellen..."
-#: src/ui/gui/data-editor.ui:332
+#: src/ui/gui/data-editor.ui:263
msgid "Compare _Means"
msgstr "_Mittelwerte vergleichen"
-#: src/ui/gui/data-editor.ui:340
+#: src/ui/gui/data-editor.ui:265
msgid "_Means..."
msgstr "_Mittelwerte..."
-#: src/ui/gui/data-editor.ui:347
+#: src/ui/gui/data-editor.ui:269
msgid "_One Sample T Test..."
msgstr "T-Te_st bei einer Stichprobe..."
-#: src/ui/gui/data-editor.ui:354
+#: src/ui/gui/data-editor.ui:273
msgid "_Independent Samples T Test..."
msgstr "_T-Test bei unabhängigen Stichproben..."
-#: src/ui/gui/data-editor.ui:361
+#: src/ui/gui/data-editor.ui:277
msgid "_Paired Samples T Test..."
msgstr "T-Test bei gepaarten Stich_proben..."
-#: src/ui/gui/data-editor.ui:368
-msgid "One Way _ANOVA..."
-msgstr "Einf_aktorielle ANOVA..."
+#: src/ui/gui/data-editor.ui:281
+msgid "_One Way _ANOVA..."
+msgstr "Einfaktorielle _ANOVA..."
-#: src/ui/gui/data-editor.ui:375
+#: src/ui/gui/data-editor.ui:286
msgid "_Univariate Analysis..."
msgstr "_Univariate Analyse..."
-#: src/ui/gui/data-editor.ui:383
+#: src/ui/gui/data-editor.ui:290
msgid "Bivariate _Correlation..."
msgstr "Bivariate _Korrelationen..."
-#: src/ui/gui/data-editor.ui:391
+#: src/ui/gui/data-editor.ui:294
msgid "_K-Means Cluster..."
msgstr "k-Means Clusteranalyse..."
-#: src/ui/gui/data-editor.ui:399
-msgid "Factor _Analysis..."
-msgstr "Faktorenanalyse..."
+#: src/ui/gui/data-editor.ui:298
+msgid "_Factor Analysis..."
+msgstr "_Faktorenanalyse..."
-#: src/ui/gui/data-editor.ui:407
+#: src/ui/gui/data-editor.ui:302
msgid "Re_liability..."
msgstr "Re_liabilitätsanalyse..."
-#: src/ui/gui/data-editor.ui:414
+#: src/ui/gui/data-editor.ui:306
msgid "_Regression"
msgstr "_Regression"
-#: src/ui/gui/data-editor.ui:422
+#: src/ui/gui/data-editor.ui:309
msgid "_Linear..."
msgstr "_Linear..."
-#: src/ui/gui/data-editor.ui:429
+#: src/ui/gui/data-editor.ui:313
msgid "_Binary Logistic..."
msgstr "_Binär Logistisch..."
-#: src/ui/gui/data-editor.ui:435
+#: src/ui/gui/data-editor.ui:319
msgid "_Non-Parametric Statistics"
msgstr "_Nichtparametrische Tests"
-#: src/ui/gui/data-editor.ui:443
-msgid "_Chi-Square..."
+#: src/ui/gui/data-editor.ui:322
+msgid "_Chi Square..."
msgstr "_Chi-Quadrat..."
-#: src/ui/gui/data-editor.ui:450
+#: src/ui/gui/data-editor.ui:326
msgid "_Binomial..."
msgstr "_Binominal..."
-#: src/ui/gui/data-editor.ui:457
-msgid "R_uns..."
+#: src/ui/gui/data-editor.ui:330
+msgid "_Runs..."
msgstr "R_uns-Test..."
-#: src/ui/gui/data-editor.ui:464
-msgid "1-Sample _K-S..."
+#: src/ui/gui/data-editor.ui:334
+msgid "_1 Sample K-S..."
msgstr "K-S Test bei einer Stichprobe..."
-#: src/ui/gui/data-editor.ui:471
-msgid "2 _Related Samples..."
+#: src/ui/gui/data-editor.ui:338
+msgid "_2 Related Samples..."
msgstr "Zwei _verbundene Stichproben..."
-#: src/ui/gui/data-editor.ui:478
-msgid "K Related _Samples..."
+#: src/ui/gui/data-editor.ui:342
+msgid "_K Related Samples..."
msgstr "K ver_bundene Stichproben..."
-#: src/ui/gui/data-editor.ui:485
+#: src/ui/gui/data-editor.ui:346
+msgid "K _Independent Samples..."
+msgstr "K _unabhängige Stichproben..."
+
+#: src/ui/gui/data-editor.ui:352
msgid "ROC Cur_ve..."
msgstr "ROC-Kur_ve..."
-#: src/ui/gui/data-editor.ui:492
+#: src/ui/gui/data-editor.ui:358
msgid "_Graphs"
msgstr "_Diagramme"
-#: src/ui/gui/data-editor.ui:499
+#: src/ui/gui/data-editor.ui:361
msgid "_Scatterplot"
msgstr "_Scatterplot"
-#: src/ui/gui/data-editor.ui:507
+#: src/ui/gui/data-editor.ui:365
msgid "_Histogram"
msgstr "_Histogramm"
-#: src/ui/gui/data-editor.ui:515
+#: src/ui/gui/data-editor.ui:369
msgid "_Barchart"
msgstr "_Balkendiagramm"
-#: src/ui/gui/data-editor.ui:522
+#: src/ui/gui/data-editor.ui:375
msgid "_Utilities"
msgstr "E_xtras"
-#: src/ui/gui/data-editor.ui:529
+#: src/ui/gui/data-editor.ui:378
msgid "_Variables..."
msgstr "_Variablen..."
-#: src/ui/gui/data-editor.ui:538
+#: src/ui/gui/data-editor.ui:382
msgid "Data File _Comments..."
msgstr "Datendateikommentare..."
-#: src/ui/gui/data-editor.ui:682
-msgid "Information Area"
-msgstr "Informationsbereich"
-
-#: src/ui/gui/data-editor.ui:704
-msgid "Case Counter Area"
-msgstr "Status der verarbeiteten Fälle"
-
-#: src/ui/gui/data-editor.ui:729
-msgid "Filter Use Status Area"
-msgstr "Status der Fallauswahl"
-
-#: src/ui/gui/data-editor.ui:755
-msgid "Weight Status Area"
-msgstr "Status der Fallgewichtung"
-
-#: src/ui/gui/data-editor.ui:781
-msgid "Split File Status Area"
-msgstr "Status der Dateiaufteilung"
-
-#: src/ui/gui/output-window.ui:16 src/ui/gui/syntax-editor.ui:59
+#: src/ui/gui/output-window.ui:55
msgid "_Print..."
msgstr "_Drucken..."
-#: src/ui/gui/output-window.ui:24
+#: src/ui/gui/output-window.ui:60
msgid "_Export..."
msgstr "_Exportieren..."
-#: src/ui/gui/output-window.ui:37
+#: src/ui/gui/output-window.ui:76
msgid "Select _All"
msgstr "_Alles auswählen"
-#: src/ui/gui/output-window.ui:44
-msgid "_Copy"
-msgstr "_Kopieren"
+#: src/ui/gui/syntax-editor.ui:11
+msgid "Syntax"
+msgstr "Syntax"
-#: src/ui/gui/syntax-editor.ui:119
+#: src/ui/gui/syntax-editor.ui:15
+msgid "Data"
+msgstr "Daten"
+
+#: src/ui/gui/syntax-editor.ui:25
+msgid "_Save"
+msgstr "Speichern"
+
+#: src/ui/gui/syntax-editor.ui:30
+msgid "Save _As"
+msgstr "Speichern _unter..."
+
+#: src/ui/gui/syntax-editor.ui:37
+msgid "_Print"
+msgstr "_Drucken"
+
+#: src/ui/gui/syntax-editor.ui:68
+msgid "_Delete"
+msgstr "_Löschen"
+
+#: src/ui/gui/syntax-editor.ui:74
+msgid "_Undo"
+msgstr "_Rückgängig"
+
+#: src/ui/gui/syntax-editor.ui:78
+msgid "_Redo"
+msgstr "_Wiederherstellen"
+
+#: src/ui/gui/syntax-editor.ui:84
msgid "_Run"
msgstr "_Ausführen"
-#: src/ui/gui/syntax-editor.ui:126
-msgid "All"
-msgstr "Alles"
+#: src/ui/gui/syntax-editor.ui:87
+msgid "_All"
+msgstr "_Alle"
-#: src/ui/gui/syntax-editor.ui:133
-msgid "Selection"
-msgstr "Auswahl"
+#: src/ui/gui/syntax-editor.ui:91
+msgid "_Selection"
+msgstr "_Auswahl"
-#: src/ui/gui/syntax-editor.ui:140
-msgid "Current Line"
-msgstr "Aktuelle Zeile"
+#: src/ui/gui/syntax-editor.ui:95
+msgid "_Current Line"
+msgstr "Aktuelle _Zeile"
-#: src/ui/gui/syntax-editor.ui:148
-msgid "To End"
-msgstr "Bis Ende"
+#: src/ui/gui/syntax-editor.ui:100
+msgid "_To End"
+msgstr "_Bis Ende"
#: src/ui/gui/var-type-dialog.ui:83
msgid "Scientific notation"
msgid "Analyze statistical data with a free alternative to SPSS"
msgstr "Analyse statistischer Daten mit einer freien Alternative zu SPSS"
+#~ msgid "could not access definition for terminal `%s'"
+#~ msgstr "Auf die Eigenschaften des Terminals `%s' konnte nicht zugegriffen werden."
+
+#~ msgid ""
+#~ "PSPPIRE, a GUI for PSPP, a program for statistical analysis of sampled data.\n"
+#~ "Usage: %s [OPTION]... FILE\n"
+#~ "\n"
+#~ "Arguments to long options also apply to equivalent short options.\n"
+#~ "\n"
+#~ "GUI options:\n"
+#~ " -q, --no-splash don't show splash screen during startup\n"
+#~ "\n"
+#~ "%sLanguage options:\n"
+#~ " -I, --include=DIR append DIR to search path\n"
+#~ " -I-, --no-include clear search path\n"
+#~ " -a, --algorithm={compatible|enhanced}\n"
+#~ " set to `compatible' if you want output\n"
+#~ " calculated from broken algorithms\n"
+#~ " -x, --syntax={compatible|enhanced}\n"
+#~ " set to `compatible' to disable PSPP extensions\n"
+#~ " -i, --interactive interpret syntax in interactive mode\n"
+#~ " -s, --safer don't allow some unsafe operations\n"
+#~ "Default search path: %s\n"
+#~ "\n"
+#~ "Informative output:\n"
+#~ " -h, --help display this help and exit\n"
+#~ " -V, --version output version information and exit\n"
+#~ "\n"
+#~ "A non-option argument is interpreted as a data file in .sav or .zsav or .por\n"
+#~ "format or a syntax file to load.\n"
+#~ msgstr ""
+#~ "PSPPIRE, eine grafische Oberfläche für PSPP, ein Programm zur statistischen Analyse von Stichprobendaten.\n"
+#~ "Befehl: %s [OPTION]... DATEI\n"
+#~ "\n"
+#~ "Die gezeigten Argumente für die Langform der Optionen finden auch in der entsprechenden Kurzform der Optionen Anwendung.\n"
+#~ "\n"
+#~ "GUI Optionen:\n"
+#~ " -q, --no-splash Begrüßungsbildschirm soll beim Start nicht gezeigt werden\n"
+#~ "\n"
+#~ "%sSprachoptionen:\n"
+#~ " -I, --include=VERZEICHNIS füge das VERZEICHNIS dem Suchpfad hinzu\n"
+#~ " -I-, --no-include Löschung des Suchpfads\n"
+#~ " -a, --algorithm={compatible|enhanced}\n"
+#~ " auf `compatible' setzen, um auch von fehlerhaften\n"
+#~ " Algorithmen Ausgaben erzeugen zu lassen\n"
+#~ " -x, --syntax={compatible|enhanced}\n"
+#~ " auf `compatible' setzen, um PSPP-Erweiterungen auszuschalten\n"
+#~ " -i, --interactive interpretiere die Syntax im interaktiven Modus\n"
+#~ " --syntax-encoding=KODIERUNG legt die Kodierung der Syntaxdatei fest\n"
+#~ " -s, --safer unterbindet unsichere Operationen\n"
+#~ "Voreigestellter Suchpfad: %s\n"
+#~ "\n"
+#~ "Information:\n"
+#~ " -h, --help Anzeige dieses Hilfetextes\n"
+#~ " -V, --version Anzeige der Versionsinformationen\n"
+#~ "\n"
+#~ "Ein Argument ohne Optionen wird als Datendatei im .sav oder .zsav Format interpretiert\n"
+#~ "oder als Syntaxdatei, die ausgeführt wird.\n"
+
+#~ msgid "_Reset"
+#~ msgstr "_Zurücksetzen"
+
+#~ msgid "_Select"
+#~ msgstr "A_swählen"
+
+#~ msgid "var"
+#~ msgstr "var"
+
+#~ msgid "Delete the variables at the selected position(s)"
+#~ msgstr "Die ausgewählte(n) Variable(n) löschen"
+
+#~ msgid "Delete the cases at the selected position(s)"
+#~ msgstr "Lösche Fälle in den/der ausgewählten Position(en)"
+
+#~ msgid "_Open..."
+#~ msgstr "Ö_ffnen..."
+
+#~ msgid "Transpose the cases with the variables"
+#~ msgstr "Transponiert die Fälle mit den Variablen"
+
+#~ msgid "Aggregate the case values into a new variable"
+#~ msgstr "Zusammenführung der Werte in einer neuen Variable"
+
+#~ msgid "Choose a subset of cases for analysis"
+#~ msgstr "Wählen Sie einen Teil der Fälle zur Analyse aus"
+
+#~ msgid "All"
+#~ msgstr "Alles"
+
#~ msgid "expecting number or data string"
#~ msgstr "erwarte Zahl oder Zeichenkette"
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
# PSPP
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
noinst_LTLIBRARIES += src/data/libdata.la
src_data_libdata_la_CPPFLAGS = $(LIBXML2_CFLAGS) $(PG_CFLAGS) $(AM_CPPFLAGS)
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#ifndef CALENDAR_H
#define CALENDAR_H 1
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
/* -*- mode: c; buffer-read-only: t -*-
Generated by sys-file-encoding.pl. Do not modify!
size_t sfm_var_cnt; /* Number of variables. */
int case_cnt; /* Number of cases */
const char *encoding; /* String encoding. */
+ bool written_by_readstat; /* From https://github.com/WizardMac/ReadStat? */
/* Decompression. */
enum any_compression compression;
struct sfm_var_record *);
static bool read_value_label_record (struct sfm_reader *,
struct sfm_value_label_record *);
-static struct sfm_document_record *read_document_record (struct sfm_reader *);
+static bool read_document_record (struct sfm_reader *);
static bool read_extension_record (struct sfm_reader *, int subtype,
struct sfm_extension_record **);
static bool skip_extension_record (struct sfm_reader *, int subtype);
sys_error (r, r->pos, _("Duplicate type 6 (document) record."));
return false;
}
- r->document = read_document_record (r);
- return r->document != NULL;
+ return read_document_record (r);
case 7:
if (!read_int (r, &subtype))
18. I'm surprised that SPSS puts up with this. */
struct sfm_extension_record *ext;
bool ok = read_extension_record (r, subtype, &ext);
- if (ok)
+ if (ok && ext)
ll_push_tail (&r->var_attrs, &ext->ll);
return ok;
}
amount that the header claims. SPSS version 13 gets this
wrong when very long strings are involved, so don't warn in
that case. */
- if (r->header.nominal_case_size != -1
+ if (r->header.nominal_case_size > 0
&& r->header.nominal_case_size != r->n_vars
&& r->info.version_major != 13)
sys_warn (r, -1, _("File header claims %d variable positions but "
if (!read_string (r, header->magic, sizeof header->magic)
|| !read_string (r, header->eye_catcher, sizeof header->eye_catcher))
return false;
+ r->written_by_readstat = strstr (header->eye_catcher,
+ "https://github.com/WizardMac/ReadStat");
if (!strcmp (ASCII_MAGIC, header->magic)
|| !strcmp (EBCDIC_MAGIC, header->magic))
return true;
}
-/* Reads a document record from R and returns it. */
-static struct sfm_document_record *
+/* Reads a document record from R. Returns true if successful, false on
+ error. */
+static bool
read_document_record (struct sfm_reader *r)
{
- struct sfm_document_record *record;
int n_lines;
-
- record = pool_malloc (r->pool, sizeof *record);
- record->pos = r->pos;
-
if (!read_int (r, &n_lines))
- return NULL;
- if (n_lines <= 0 || n_lines >= INT_MAX / DOC_LINE_LENGTH)
+ return false;
+ else if (n_lines == 0)
+ return true;
+ else if (n_lines < 0 || n_lines >= INT_MAX / DOC_LINE_LENGTH)
{
- sys_error (r, record->pos,
+ sys_error (r, r->pos,
_("Number of document lines (%d) "
"must be greater than 0 and less than %d."),
n_lines, INT_MAX / DOC_LINE_LENGTH);
- return NULL;
+ return false;
}
+ struct sfm_document_record *record;
+ record = pool_malloc (r->pool, sizeof *record);
+ record->pos = r->pos;
record->n_lines = n_lines;
record->documents = pool_malloc (r->pool, DOC_LINE_LENGTH * n_lines);
if (!read_bytes (r, record->documents, DOC_LINE_LENGTH * n_lines))
- return NULL;
+ return false;
- return record;
+ r->document = record;
+ return true;
}
static bool
if (!var_add_value_label (var, &value, utf8_labels[j]))
{
- if (var_is_numeric (var))
+ if (r->written_by_readstat)
+ {
+ /* Ignore the problem. ReadStat is buggy and emits value
+ labels whose values are longer than string variables'
+ widths, that are identical in the actual width of the
+ variable, e.g. both values "ABC123" and "ABC456" for a
+ string variable with width 3. */
+ }
+ else if (var_is_numeric (var))
sys_warn (r, record->pos,
_("Duplicate value label for %g on %s."),
value.f, var_get_name (var));
ofs += 4;
/* Parse variable name, width, and number of labels. */
- if (!check_overflow (r, record, ofs, var_name_len + 8))
+ if (!check_overflow (r, record, ofs, var_name_len)
+ || !check_overflow (r, record, ofs, var_name_len + 8))
return;
var_name = recode_string_pool ("UTF-8", dict_encoding,
(const char *) record->data + ofs,
ofs += 4;
/* Parse variable name. */
- if (!check_overflow (r, record, ofs, var_name_len + 1))
+ if (!check_overflow (r, record, ofs, var_name_len)
+ || !check_overflow (r, record, ofs, var_name_len + 1))
return;
var_name = recode_string_pool ("UTF-8", dict_encoding,
(const char *) record->data + ofs,
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
include $(top_srcdir)/src/language/lexer/automake.mk
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#include <config.h>
#include "language/control/control-stack.h"
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
language_data_io_sources = \
int n_continuous_vars;
struct variable **split_vars;
size_t n_split_vars;
+ long n;
};
/*
const int idx = var_get_dict_index (mformat->varname);
row = 0;
+ if (mformat->n >= 0)
+ {
+ int col;
+ struct ccase *outcase = case_create (proto);
+ union value *v = case_data_rw (outcase, mformat->rowtype);
+ uint8_t *n = value_str_rw (v, ROWTYPE_WIDTH);
+ strncpy ((char *) n, "N ", ROWTYPE_WIDTH);
+ blank_varname_column (outcase, mformat->varname);
+ for (col = 0; col < mformat->n_continuous_vars; ++col)
+ {
+ union value *dest_val =
+ case_data_rw_idx (outcase,
+ 1 + col + var_get_dict_index (mformat->varname));
+ dest_val->f = mformat->n;
+ }
+ casewriter_write (writer, outcase);
+ }
+
prev_split_hash = 1;
n_splits = 0;
for (; (c = casereader_read (casereader0)) != NULL; prev_case = c)
}
prev_split_hash = split_hash;
-
case_unref (prev_case);
- struct ccase *outcase = case_create (proto);
- case_copy (outcase, 0, c, 0, caseproto_get_n_widths (proto));
const union value *v = case_data (c, mformat->rowtype);
const char *val = (const char *) value_str (v, ROWTYPE_WIDTH);
+ if (mformat->n >= 0)
+ {
+ if (0 == strncasecmp (val, "n ", ROWTYPE_WIDTH) ||
+ 0 == strncasecmp (val, "n_vector", ROWTYPE_WIDTH))
+ {
+ msg (SW,
+ _("The N subcommand was specified, but a N record was also found in the data. The N record will be ignored."));
+ continue;
+ }
+ }
+
+ struct ccase *outcase = case_create (proto);
+ case_copy (outcase, 0, c, 0, caseproto_get_n_widths (proto));
+
if (0 == strncasecmp (val, "corr ", ROWTYPE_WIDTH) ||
0 == strncasecmp (val, "cov ", ROWTYPE_WIDTH))
{
mformat.diagonal = DIAGONAL;
mformat.n_split_vars = 0;
mformat.split_vars = NULL;
+ mformat.n = -1;
dict = (in_input_program ()
? dataset_dict (ds)
if (! lex_force_match (lexer, T_SLASH))
goto error;
- if (lex_match_id (lexer, "FORMAT"))
+ if (lex_match_id (lexer, "N"))
+ {
+ lex_match (lexer, T_EQUALS);
+
+ if (! lex_force_int (lexer))
+ goto error;
+
+ mformat.n = lex_integer (lexer);
+ if (mformat.n < 0)
+ {
+ msg (SE, _("%s must not be negative."), "N");
+ goto error;
+ }
+ lex_get (lexer);
+ }
+ else if (lex_match_id (lexer, "FORMAT"))
{
lex_match (lexer, T_EQUALS);
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
language_dictionary_sources = \
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
language_expressions_sources = \
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
use strict;
use warnings 'all';
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#ifndef EXPRESSIONS_HELPERS_H
#define EXPRESSIONS_HELPERS_H
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
AM_CPPFLAGS += -I$(top_srcdir)/src/language/stats
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#ifndef BARCHART_DEF_H
#define BARCHART_DEF_H 1
double detR; /* The determinant of the correlation matrix */
+ gsl_matrix *ai_cov; /* The anti-image covariance matrix */
+ gsl_matrix *ai_cor; /* The anti-image correlation matrix */
struct covariance *cvm;
};
gsl_vector_free (id->msr);
gsl_vector_free (id->eval);
gsl_matrix_free (id->evec);
+ gsl_matrix_free (id->ai_cov);
+ gsl_matrix_free (id->ai_cor);
free (id);
}
-
-static gsl_matrix *
-anti_image (const gsl_matrix *m)
+/* Return the sum of squares of all the elements in row J excluding column J */
+static double
+ssq_row_od_n (const gsl_matrix *m, int j)
{
- int i, j;
- gsl_matrix *a;
+ int i;
+ double ss = 0;
assert (m->size1 == m->size2);
- a = gsl_matrix_alloc (m->size1, m->size2);
+ assert (j < m->size1);
for (i = 0; i < m->size1; ++i)
{
- for (j = 0; j < m->size2; ++j)
- {
- double *p = gsl_matrix_ptr (a, i, j);
- *p = gsl_matrix_get (m, i, j);
- *p /= gsl_matrix_get (m, i, i);
- *p /= gsl_matrix_get (m, j, j);
- }
+ if (i == j ) continue;
+ ss += pow2 (gsl_matrix_get (m, i, j));
}
- return a;
+ return ss;
}
-
-/* Return the sum of all the elements excluding row N */
+/* Return the sum of squares of all the elements excluding row N */
static double
ssq_od_n (const gsl_matrix *m, int n)
{
for (i = 0; i < m->size1; ++i)
{
- if (i == n ) continue;
for (j = 0; j < m->size2; ++j)
{
+ if (i == j) continue;
ss += pow2 (gsl_matrix_get (m, i, j));
}
}
}
+static gsl_matrix *
+anti_image_corr (const gsl_matrix *m, const struct idata *idata)
+{
+ int i, j;
+ gsl_matrix *a;
+ assert (m->size1 == m->size2);
+
+ a = gsl_matrix_alloc (m->size1, m->size2);
+
+ for (i = 0; i < m->size1; ++i)
+ {
+ for (j = 0; j < m->size2; ++j)
+ {
+ double *p = gsl_matrix_ptr (a, i, j);
+ *p = gsl_matrix_get (m, i, j);
+ *p /= sqrt (gsl_matrix_get (m, i, i) *
+ gsl_matrix_get (m, j, j));
+ }
+ }
+
+ for (i = 0; i < m->size1; ++i)
+ {
+ double r = ssq_row_od_n (idata->mm.corr, i);
+ double u = ssq_row_od_n (a, i);
+ gsl_matrix_set (a, i, i, r / (r + u));
+ }
+
+ return a;
+}
+
+static gsl_matrix *
+anti_image_cov (const gsl_matrix *m)
+{
+ int i, j;
+ gsl_matrix *a;
+ assert (m->size1 == m->size2);
+
+ a = gsl_matrix_alloc (m->size1, m->size2);
+
+ for (i = 0; i < m->size1; ++i)
+ {
+ for (j = 0; j < m->size2; ++j)
+ {
+ double *p = gsl_matrix_ptr (a, i, j);
+ *p = gsl_matrix_get (m, i, j);
+ *p /= gsl_matrix_get (m, i, i);
+ *p /= gsl_matrix_get (m, j, j);
+ }
+ }
+
+ return a;
+}
#if 0
static void
else if (lex_match_id (lexer, "INV"))
{
}
+#endif
else if (lex_match_id (lexer, "AIC"))
{
+ factor.print |= PRINT_AIC;
}
-#endif
else if (lex_match_id (lexer, "SIG"))
{
factor.print |= PRINT_SIG;
tab_submit (t);
}
+static void
+show_aic (const struct cmd_factor *factor, const struct idata *idata)
+{
+ struct tab_table *t ;
+ size_t i;
+
+ const int heading_rows = 1;
+ const int heading_columns = 2;
+
+ const int nc = heading_columns + factor->n_vars;
+ const int nr = heading_rows + 2 * factor->n_vars;
+
+ if ((factor->print & PRINT_AIC) == 0)
+ return;
+
+ t = tab_create (nc, nr);
+
+ tab_title (t, _("Anti-Image Matrices"));
+
+ tab_hline (t, TAL_1, 0, nc - 1, heading_rows);
+
+ tab_headers (t, heading_columns, 0, heading_rows, 0);
+
+ tab_vline (t, TAL_2, 2, 0, nr - 1);
+
+ /* Outline the box */
+ tab_box (t,
+ TAL_2, TAL_2,
+ -1, -1,
+ 0, 0,
+ nc - 1, nr - 1);
+
+ /* Vertical lines */
+ tab_box (t,
+ -1, -1,
+ -1, TAL_1,
+ heading_columns, 0,
+ nc - 1, nr - 1);
+
+
+ for (i = 0; i < factor->n_vars; ++i)
+ tab_text (t, heading_columns + i, 0, TAT_TITLE, var_to_string (factor->vars[i]));
+
+ tab_text (t, 0, heading_rows, TAT_TITLE, _("Anti-image Covariance"));
+ tab_hline (t, TAL_1, 0, nc - 1, heading_rows + factor->n_vars);
+ tab_text (t, 0, heading_rows + factor->n_vars, TAT_TITLE, _("Anti-image Correlation"));
+
+ for (i = 0; i < factor->n_vars; ++i)
+ {
+ tab_text (t, 1, i + heading_rows, TAT_TITLE,
+ var_to_string (factor->vars[i]));
+
+ tab_text (t, 1, factor->n_vars + i + heading_rows, TAT_TITLE,
+ var_to_string (factor->vars[i]));
+ }
+
+ for (i = 0; i < factor->n_vars; ++i)
+ {
+ int j;
+ for (j = 0; j < factor->n_vars; ++j)
+ {
+ tab_double (t, heading_columns + i, heading_rows + j, 0,
+ gsl_matrix_get (idata->ai_cov, i, j), NULL, RC_OTHER);
+ }
+
+
+ for (j = 0; j < factor->n_vars; ++j)
+ {
+ tab_double (t, heading_columns + i, factor->n_vars + heading_rows + j, 0,
+ gsl_matrix_get (idata->ai_cor, i, j), NULL, RC_OTHER);
+ }
+ }
+
+ tab_submit (t);
+}
static void
show_correlation_matrix (const struct cmd_factor *factor, const struct idata *idata)
else
idata->analysis_matrix = idata->mm.cov;
+ gsl_matrix *r_inv;
+ r_inv = clone_matrix (idata->mm.corr);
+ gsl_linalg_cholesky_decomp (r_inv);
+ gsl_linalg_cholesky_invert (r_inv);
+
+ idata->ai_cov = anti_image_cov (r_inv);
+ idata->ai_cor = anti_image_corr (r_inv, idata);
+
+ int i;
+ double sum_ssq_r = 0;
+ double sum_ssq_a = 0;
+ for (i = 0; i < r_inv->size1; ++i)
+ {
+ sum_ssq_r += ssq_od_n (idata->mm.corr, i);
+ sum_ssq_a += ssq_od_n (idata->ai_cor, i);
+ }
+
+ gsl_matrix_free (r_inv);
+
if (factor->print & PRINT_DETERMINANT
|| factor->print & PRINT_KMO)
{
if (factor->print & PRINT_KMO)
{
int i;
- double sum_ssq_r = 0;
- double sum_ssq_a = 0;
-
double df = factor->n_vars * (factor->n_vars - 1) / 2;
double w = 0;
const int nr = heading_rows + 4;
const int nc = heading_columns + 1;
- gsl_matrix *a, *x;
+
struct tab_table *t = tab_create (nc, nr);
tab_title (t, _("KMO and Bartlett's Test"));
- x = clone_matrix (idata->mm.corr);
- gsl_linalg_cholesky_decomp (x);
- gsl_linalg_cholesky_invert (x);
-
- a = anti_image (x);
-
- for (i = 0; i < x->size1; ++i)
- {
- sum_ssq_r += ssq_od_n (x, i);
- sum_ssq_a += ssq_od_n (a, i);
- }
-
- gsl_matrix_free (a);
- gsl_matrix_free (x);
tab_headers (t, heading_columns, 0, heading_rows, 0);
}
+ show_aic (factor, idata);
show_communalities (factor, initial_communalities, extracted_communalities);
-
if ( factor->rotation != ROT_NONE)
{
rotated_factors = gsl_matrix_calloc (factor_matrix->size1, factor_matrix->size2);
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
language_tests_sources = \
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#ifndef ALGORITHM_H
#define ALGORITHM_H 1
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
zr->members = xcalloc (zr->n_members, sizeof (*zr->members));
memset (zr->members, 0, zr->n_members * sizeof (*zr->members));
- zr->filename = strdup (filename);
+ zr->filename = xstrdup (filename);
return zr;
}
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
size_t j;
double result;
- assert (n_vals = c->n_coeffs);
+ assert (n_vals == c->n_coeffs);
if (vals == NULL || c == NULL)
{
return GSL_NAN;
gsl_vector_set (c->indep_means, j, m);
}
+#if 0
static void
linreg_fit_qr (const gsl_matrix *cov, struct linreg *l)
{
gsl_matrix_free (xtx);
gsl_vector_free (params);
}
+#endif
#define REG_LARGE_DATA 1000
l->sst = gsl_matrix_get (cov, cov->size1 - 1, cov->size2 - 1);
+#if 0
+ /* This QR decomposition path seems to produce the incorrect
+ values. See https://savannah.gnu.org/bugs/?51373 */
if ((l->n_obs * l->n_obs > l->n_indeps) && (l->n_obs > REG_LARGE_DATA))
{
/*
linreg_fit_qr (cov, l);
}
else
+#endif
{
gsl_matrix *params = gsl_matrix_calloc (cov->size1, cov->size2);
gsl_matrix_memcpy (params, cov);
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#ifndef WX_MP_SR
#define WX_MP_SR 1
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
noinst_LTLIBRARIES += src/output/liboutput.la
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
include $(top_srcdir)/src/ui/terminal/automake.mk
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
UI_FILES = \
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<interface>
<!-- interface-requires gtk+ 2.6 -->
<!-- interface-naming-policy toplevel-contextual -->
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
EXTRA_DIST += $(icons) $(icon_srcs) src/ui/gui/icons/COPYING_CCBYSA3
include $(top_srcdir)/src/ui/gui/icons/manifest
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.0"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
gtk_widget_set_sensitive (GTK_WIDGET (bb->button[PSPPIRE_BUTTON_CONTINUE]), valid);
}
+static gboolean
+on_key_press (GtkWidget *w, GdkEventKey *e, gpointer ud)
+{
+ PsppireButtonbox *bb = PSPPIRE_BUTTONBOX (ud);
+ if (e->keyval == GDK_KEY_Escape)
+ {
+ g_signal_emit_by_name (bb->button[PSPPIRE_BUTTON_CANCEL], "activate");
+ g_signal_emit_by_name (bb->button[PSPPIRE_BUTTON_CLOSE], "activate");
+ }
+ return FALSE;
+}
+
+
static void
on_realize (GtkWidget *buttonbox, gpointer data)
{
GtkWidget *toplevel = gtk_widget_get_toplevel (buttonbox);
- if ( PSPPIRE_IS_DIALOG (toplevel))
+ if (PSPPIRE_IS_DIALOG (toplevel))
{
g_signal_connect (toplevel, "validity-changed",
G_CALLBACK (on_validity_change), buttonbox);
+
+ g_signal_connect (toplevel, "key-press-event",
+ G_CALLBACK (on_key_press), buttonbox);
}
+
set_default (PSPPIRE_BUTTONBOX (buttonbox));
}
+
static void
psppire_button_box_init (PsppireButtonbox *bb)
{
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!--*- mode: xml -*-->
<interface>
<menu id="syntax-window-menu">
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#include <config.h>
#include "var-display.h"
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
<?xml version="1.0" encoding="UTF-8"?>
+<!-- PSPP - a program for statistical analysis. -->
+<!-- Copyright (C) 2017 Free Software Foundation, Inc. -->
+
+<!-- This program 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. -->
+
+<!-- This program 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 this program. If not, see <http://www.gnu.org/licenses/>. -->
+
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.4.2"/>
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#include <config.h>
#include <gtksourceview/gtksource.h>
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
noinst_LTLIBRARIES += src/ui/terminal/libui.la
# -*- shell-script -*-
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+
# Variables used internally by the testsuite.
EXEEXT='@EXEEXT@'
GNM_READ_SUPPORT='@GNM_READ_SUPPORT@'
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
## Process this file with automake to produce Makefile.in -*- makefile -*-
check_PROGRAMS += \
EXTRA_DIST += \
tests/coverage.sh \
+ tests/data/CVE-2017-10791.sav \
+ tests/data/CVE-2017-10792.sav \
tests/data/bcd-in.expected.cmp.gz \
tests/data/binhex-in.expected.cmp.gz \
tests/data/binhex-out.expected.gz \
#!/bin/sh
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
# This little script can be used in conjunction with gcov to see how well
# the regression test suite is covering the PSPP code.
#
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([calendar])
AT_SETUP([epoch])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([data input (data-in)])
m4_divert_push([PREPARE_TESTS])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([data output (data-out)])
AT_SETUP([numeric format output])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([datasheet])
m4_define([DATASHEET_TEST],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([dictionary])
AT_SETUP([dictionary case-insensitivity])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([encrypted files])
AT_SETUP([decrypt an encrypted system file])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([files handling])
AT_SETUP([Write error - directory exists])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([format guesser])
AT_SETUP([format guesser])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SPSS/PC+ file reader - positive])
AT_SETUP([variable labels and missing values])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([portable files])
AT_SETUP([overwriting portable file])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([system file reader - positive])
AT_SETUP([variable labels and missing values])
done
AT_CLEANUP
+AT_SETUP([empty document record])
+AT_KEYWORDS([sack synthetic system file positive])
+AT_DATA([sys-file.sack], [dnl
+dnl File header.
+"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
+2; dnl Layout code
+1; dnl Nominal case size
+0; dnl Not compressed
+0; dnl Not weighted
+1; dnl 1 case.
+100.0; dnl Bias.
+"01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
+i8 0 *3;
+
+dnl Numeric variable, no label or missing values.
+2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
+
+dnl Machine integer info record.
+7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
+
+dnl Document record.
+6; 0;
+
+dnl Character encoding record.
+7; 20; 1; 12; "windows-1252";
+
+dnl Dictionary termination record.
+999; 0;
+
+dnl Data.
+1.0;
+])
+for variant in be le; do
+ AT_CHECK([sack --$variant sys-file.sack > sys-file.sav])
+ AT_DATA([sys-file.sps], [dnl
+GET FILE='sys-file.sav'.
+LIST.
+])
+ AT_CHECK([pspp -o pspp.csv sys-file.sps])
+ AT_CHECK([cat pspp.csv], [0], [dnl
+Table: Data List
+num1
+1
+])
+done
+AT_CLEANUP
+
AT_SETUP([multiple response sets])
AT_KEYWORDS([sack synthetic system file positive])
AT_DATA([sys-file.sack], [dnl
AT_CLEANUP
-AT_SETUP([empty document record])
-AT_KEYWORDS([sack synthetic system file negative])
-AT_DATA([sys-file.sack], [dnl
-dnl File header.
-"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
-2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
-
-dnl Numeric variable, no label or missing values.
-2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
-
-dnl Empty document record.
-6; >>0<<;
-
-dnl Dictionary termination record.
-999; 0;
-
-dnl Data.
-1.0;
-])
-for variant in be le; do
- AT_CHECK([sack --$variant sys-file.sack > sys-file.sav])
- AT_DATA([sys-file.sps], [dnl
-GET FILE='sys-file.sav'.
-])
- AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
-error: `sys-file.sav' near offset 0xd4: Number of document lines (0) must be greater than 0 and less than 26843545.
-])
-done
-AT_CLEANUP
-
AT_SETUP([extension record too large])
AT_KEYWORDS([sack synthetic system file negative])
AT_DATA([sys-file.sack], [dnl
])
done
AT_CLEANUP
+
+# CVE-2017-10791.
+# See also https://bugzilla.redhat.com/show_bug.cgi?id=1467004.
+# See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=866890.
+# See also https://security-tracker.debian.org/tracker/CVE-2017-10791.
+# Found by team OWL337, using the collAFL fuzzer.
+AT_SETUP([integer overflows in long string missing values])
+AT_KEYWORDS([system file negative])
+cp $top_srcdir/tests/data/CVE-2017-10791.sav .
+AT_CHECK([pspp-convert -O csv -e ASCII CVE-2017-10791.sav -], [0], [], [dnl
+`CVE-2017-10791.sav' near offset 0x217: Extension record subtype 21 ends unexpectedly.
+])
+AT_CLEANUP
+
+# CVE-2017-10792.
+# See also https://bugzilla.redhat.com/show_bug.cgi?id=1467005.
+# See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=866890.
+# See also https://security-tracker.debian.org/tracker/CVE-2017-10792.
+# Reported by team OWL337, with fuzzer collAFL.
+AT_SETUP([null dereference skipping bad extension record 18])
+AT_KEYWORDS([system file negative])
+cp $top_srcdir/tests/data/CVE-2017-10792.sav .
+AT_CHECK([pspp-convert -O csv -e ASCII CVE-2017-10792.sav -], [0], [], [dnl
+`CVE-2017-10792.sav' near offset 0x1c0: Record type 7, subtype 18 has bad size 4 (expected 1).
+])
+AT_CLEANUP
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([system files])
# Also tests that long variable names are preserved by SAVE and GET.
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([command parser])
dnl Tests for a bug which crashed pspp when given certain invalid input.
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([DO IF])
AT_SETUP([DO IF])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([DO REPEAT])
AT_SETUP([DO REPEAT -- simple])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([LOOP])
m4_define([LOOP_DATA], [dnl
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([TEMPORARY])
dnl Tests for a bug that manifested when all transformations are temporary.
-m4_define([CHECK_ADD_FILES],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl m4_define([CHECK_ADD_FILES],
[AT_SETUP([ADD FILES -- $1 $2 with $3])
AT_DATA([a.data], [dnl
1aB
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([DATA LIST])
AT_SETUP([DATA LIST LIST with empty fields])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([BEGIN DATA])
# BEGIN DATA can run as a command in itself, or it can appear as part
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([DATASET commands])
AT_SETUP([DATASET COPY])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([FILE HANDLE])
AT_SETUP([FILE HANDLE])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([GET DATA /TYPE=PSQL])
m4_define([INIT_PSQL],
-
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
m4_define([SPREADSHEET_TEST_PREP],[dnl
m4_if($1,[GNM],[dnl
AT_CHECK([gzip -c $top_srcdir/tests/language/data-io/Book1.gnm.unzipped > Book1.gnumeric])dnl
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([GET DATA /TYPE=TXT])
dnl These tests exercise features of GET DATA /TYPE=TXT that
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([GET])
dnl Tests for a bug which caused the second procedure
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([INPUT PROGRAM])
dnl Tests for a bug which caused a crash when
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([LIST])
AT_SETUP([LIST plain cases])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([MATCH FILES])
m4_define([PREPARE_MATCH_FILES],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([MATRIX DATA])
AT_SETUP([Matrix data (lower file)])
AT_CHECK([pspp -O format=csv data.pspp], [1], [ignore])
-AT_CLEANUP
\ No newline at end of file
+AT_CLEANUP
+
+
+
+
+AT_SETUP([Matrix data (N subcommand)])
+
+AT_DATA([matrix-data.pspp], [dnl
+matrix data
+ variables = rowtype_ var01 var02 var03 var04
+ /n = 99
+ /format = upper nodiagonal.
+begin data
+mean 34 35 36 37
+sd 22 11 55 66
+n_vector 1 2 3 4
+corr 9 8 7
+corr 6 5
+corr 4
+end data.
+
+list.
+])
+
+AT_CHECK([pspp -O format=csv matrix-data.pspp], [0], [dnl
+"matrix-data.pspp:12: warning: MATRIX DATA: The N subcommand was specified, but a N record was also found in the data. The N record will be ignored."
+
+Table: Data List
+ROWTYPE_,VARNAME_,var01,var02,var03,var04
+N ,,99.0000,99.0000,99.0000,99.0000
+mean ,,34.0000,35.0000,36.0000,37.0000
+STDDEV ,,22.0000,11.0000,55.0000,66.0000
+corr ,var01,1.0000,9.0000,8.0000,7.0000
+corr ,var02,9.0000,1.0000,6.0000,5.0000
+corr ,var03,8.0000,6.0000,1.0000,4.0000
+corr ,var04,7.0000,5.0000,4.0000,1.0000
+])
+
+AT_CLEANUP
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([PRINT SPACE])
AT_SETUP([PRINT SPACE without arguments])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([PRINT and WRITE])
dnl These tests check unusual aspects of the PRINT and WRITE
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SAVE TRANSLATE /TYPE=CSV])
m4_define([PREPARE_SAVE_TRANSLATE_CSV], [dnl
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([IMPORT and EXPORT])
AT_SETUP([IMPORT and EXPORT])
-m4_define([CHECK_UPDATE],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl m4_define([CHECK_UPDATE],
[AT_SETUP([UPDATE $1 with $2])
AT_DATA([a.data], [dnl
1aB
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([VARIABLE ATTRIBUTES and DATAFILE ATTRIBUTES])
AT_SETUP([VARIABLE ATTRIBUTES and DATAFILE ATTRIBUTES])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([DELETE VARIABLES])
dnl Checks for regressions against a crash reported in bug #38843.
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([FORMATS])
AT_SETUP([FORMATS positive tests])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([MISSING VALUES])
AT_SETUP([MISSING VALUES valid cases])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([MRSETS])
m4_define([DEFINE_MRSETS_DATA],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([RENAME VARIABLES])
AT_SETUP([RENAME VARIABLES])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SORT VARIABLES])
AT_SETUP([SORT VARIABLES])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SPLIT FILE])
AT_SETUP([SPLIT FILE - basic test])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SYSFILE INFO])
AT_SETUP([SYSFILE INFO])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([VALUE LABELS])
AT_SETUP([VALUE LABELS date formats])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([variable display attributes])
AT_SETUP([variable display attribute commands])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([VECTOR])
AT_SETUP([VECTOR short form])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([WEIGHT])
AT_SETUP([WEIGHT])
-m4_define([CHECK_EXPR_EVAL],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl m4_define([CHECK_EXPR_EVAL],
[AT_SETUP([expressions - $1])
AT_DATA([evaluate.sps],
[set mxwarn 1000.
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([expression parsing])
AT_SETUP([parse expression with unknown variable crash])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([command name matching])
\f
AT_SETUP([single words])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([lexer])
AT_SETUP([lexer ignores initial @%:@! line])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([q2c])
AT_SETUP([q2c enforces mandatory subcommands])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([syntax scanning])
m4_define([PSPP_CHECK_SCAN],
[AT_CHECK([scan-test $1 input], [0], [expout])])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([syntax segmentation])
m4_define([PSPP_CHECK_SEGMENT],
[AT_CHECK([segment-test $1 input], [0], [expout])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Variable parser])
dnl This program tests that both long and short variable names are parsed OK.
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([AGGREGATE procedure])
dnl CHECK_AGGREGATE(OUTFILE, SORT, MISSING)
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([AUTORECODE procedure])
AT_SETUP([AUTORECODE numbers and short strings])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([CORRELATIONS])
AT_SETUP([CORRELATIONS -- unweighted])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([CROSSTABS procedure])
AT_SETUP([CROSSTABS integer mode crash])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([DESCRIPTIVES procedure])
AT_SETUP([DESCRIPTIVES basics])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([EXAMINE])
AT_SETUP([EXAMINE])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([FACTOR procedure])
AT_SETUP([FACTOR extraction=paf method=correlation])
factor matrix in (cov = *)
/ method = covariance
- / print = initial covariance kmo
+ / print = initial covariance
/ extraction = pc
/ rotation = norotate.
])
AT_CHECK([pspp -O format=csv covariance-matrix.sps], [0], [dnl
-Table: KMO and Bartlett's Test
-Kaiser-Meyer-Olkin Measure of Sampling Adequacy,,.741
-Bartlett's Test of Sphericity,Approx. Chi-Square,104.810
-,df,28
-,Sig.,.000
-
Table: Covariance Matrix
,var01,var02,var03,var04,var05,var06,var07,var08
var01,32.490,1.539,-29.469,11.902,4.309,8.464,15.390,1.454
AT_CLEANUP
-
-
-
-
AT_SETUP([FACTOR bad input])
dnl Test for a crash
AT_CHECK([pspp -O format=csv bad-input.sps], [1], [ignore])
AT_CLEANUP
+
+
+AT_SETUP([FACTOR anti-image matrix])
+
+AT_DATA([anti-image-matrix.sps], [dnl
+SET FORMAT=F20.3 .
+matrix data
+ variables = rowtype_ viq piq pa ran piatwr piatc
+ / n = 476
+ / format = lower diagonal .
+begin data
+mean 96.88 100.51 -1.73 -0.94 -2.52 -1.85
+sd 10.97 11.19 1.19 0.88 0.85 0.97
+corr 1.00
+corr 0.38 1.00
+corr 0.26 0.24 1.00
+corr 0.16 0.17 0.34 1.00
+corr 0.25 0.07 0.46 0.38 1.00
+corr 0.37 0.22 0.39 0.30 0.59 1.00
+end data.
+
+factor matrix = in (cor = *)
+ / analysis = viq piq pa ran piatwr piatc
+ / format = sort
+ / extraction = pc
+ / rotation = norotate
+ / print = aic
+])
+
+AT_CHECK([pspp -O format=csv anti-image-matrix.sps], [0], [dnl
+Table: Anti-Image Matrices
+,,viq,piq,pa,ran,piatwr,piatc
+Anti-image Covariance,viq,.762,-.248,-.048,.008,-.031,-.143
+,piq,-.248,.807,-.117,-.081,.108,-.071
+,pa,-.048,-.117,.711,-.125,-.173,-.060
+,ran,.008,-.081,-.125,.808,-.143,-.035
+,piatwr,-.031,.108,-.173,-.143,.551,-.265
+,piatc,-.143,-.071,-.060,-.035,-.265,.581
+Anti-image Correlation,viq,.741,-.316,-.066,.011,-.048,-.215
+,piq,-.316,.624,-.154,-.100,.163,-.103
+,pa,-.066,-.154,.811,-.165,-.277,-.093
+,ran,.011,-.100,-.165,.825,-.214,-.051
+,piatwr,-.048,.163,-.277,-.214,.675,-.469
+,piatc,-.215,-.103,-.093,-.051,-.469,.729
+
+Table: Component Matrix
+,Component,,,,
+,1,2,3,4,5
+piatc,.774,.122,-.368,.365,-.322
+piatwr,.754,.418,.442,.219,-.115
+pa,.707,.124,-.117,-.161,.256
+piq,.456,-.733,.122,-.289,-.377
+viq,.589,-.539,.033,.298,.457
+ran,.592,.262,-.069,-.638,.096
+])
+
+AT_CLEANUP
+
+
+AT_SETUP([FACTOR Kaiser-Meyer-Olkin])
+
+AT_DATA([kmo.sps], [dnl
+SET FORMAT=F20.3 .
+matrix data
+ variables = rowtype_ viq piq pa ran piatwr piatc
+ / n = 476
+ / format = lower diagonal .
+begin data
+mean 96.88 100.51 -1.73 -0.94 -2.52 -1.85
+sd 10.97 11.19 1.19 0.88 0.85 0.97
+corr 1.00
+corr 0.38 1.00
+corr 0.26 0.24 1.00
+corr 0.16 0.17 0.34 1.00
+corr 0.25 0.07 0.46 0.38 1.00
+corr 0.37 0.22 0.39 0.30 0.59 1.00
+end data.
+
+factor matrix = in (cor = *)
+ / analysis = viq piq pa ran piatwr piatc
+ / extraction = pc
+ / rotation = norotate
+ / print = kmo
+])
+
+AT_CHECK([pspp -O format=csv kmo.sps], [0], [dnl
+Table: KMO and Bartlett's Test
+Kaiser-Meyer-Olkin Measure of Sampling Adequacy,,.730
+Bartlett's Test of Sphericity,Approx. Chi-Square,602.673
+,df,15
+,Sig.,.000
+
+Table: Component Matrix
+,Component,,,,
+,1,2,3,4,5
+viq,.589,-.539,.033,.298,.457
+piq,.456,-.733,.122,-.289,-.377
+pa,.707,.124,-.117,-.161,.256
+ran,.592,.262,-.069,-.638,.096
+piatwr,.754,.418,.442,.219,-.115
+piatc,.774,.122,-.368,.365,-.322
+])
+
+AT_CLEANUP
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([FLIP command])
AT_SETUP([FLIP with NEWNAMES])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([FREQUENCIES procedure])
AT_SETUP([FREQUENCIES string variable])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([GLM procedure])
AT_SETUP([GLM latin square design])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([GRAPH])
AT_SETUP([GRAPH simple scatterplot])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([LOGISTIC REGRESSION])
dnl These examples are adapted from
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([MEANS procedure])
AT_SETUP([MEANS simple example])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([NPAR TESTS])
AT_SETUP([NPAR TESTS BINOMIAL P < 0.5; N1/N2 < 1])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([ONEWAY procedure])
AT_SETUP([ONEWAY basic operation])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([QUICK CLUSTER])
AT_SETUP([QUICK CLUSTER with small data set])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([RANK])
AT_SETUP([RANK simple case with defaults])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([LINEAR REGRESSION])
AT_SETUP([LINEAR REGRESSION - basic])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([RELIABILITY])
AT_SETUP([RELIABILITY])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([ROC])
AT_SETUP([ROC, free distribution])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SORT CASES])
m4_divert_push([PREPARE_TESTS])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([T-TEST])
AT_SETUP([T-TEST /PAIRS])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([CACHE])
AT_SETUP([CACHE])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([CD])
AT_SETUP([CD])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([USE])
AT_SETUP([USE ALL])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([INSERT])
dnl Create a file "batch.sps" that is valid syntax only in batch mode.
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([PERMISSIONS])
AT_SETUP([PERMISSIONS])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SET])
# This crashed older versions of PSPP (bug #30682).
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SHOW])
AT_SETUP([SHOW N])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([TITLE and related commands])
AT_SETUP([FILE LABEL and (ADD) DOCUMENT])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([COMPUTE transformation])
AT_SETUP([COMPUTE crash with SAVE])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([COUNT])
AT_SETUP([COUNT -- numeric data])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([RECODE transformation])
m4_define([RECODE_SAMPLE_DATA],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SAMPLE])
AT_SETUP([SAMPLE])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([FILTER])
AT_SETUP([FILTER])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Augmented binary tree (ABT) library])
m4_define([CHECK_ABT],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Balanced tree (BT) library])
m4_define([CHECK_BT],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([encoding guesser])
AT_SETUP([ASCII])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([floating point formats])
AT_SETUP([floating point format conversions])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Heap library])
m4_define([CHECK_HEAP],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Hash map (hmap) library])
m4_define([CHECK_HMAP],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Hash map of pointers (hmapx) library])
m4_define([CHECK_HMAPX],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([i18n recoding])
# CHECK_I18N_RECODE([TITLE], [FROM-CODING], [TO-CODING],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([line_reader])
AT_SETUP([read ASCII])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([doubly linked list (ll) library])
m4_define([CHECK_LL],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([doubly linked list of pointers (llx) library])
m4_define([CHECK_LLX],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([range map library])
m4_define([CHECK_RANGE_MAP],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([range set library])
m4_define([CHECK_RANGE_SET],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([range tower library])
m4_define([CHECK_RANGE_TOWER],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([sparse array library])
m4_define([CHECK_SPARSE_ARRAY],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([sparse external arrays])
m4_divert_push([PREPARE_TESTS])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([string library])
AT_SETUP([26-adic string formatting])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([string map library])
m4_define([CHECK_STRING_MAP],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([string set library])
m4_define([CHECK_STRING_SET],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([case-insensitive string map library])
m4_define([CHECK_STRINGI_MAP],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([case-insensitive string set library])
m4_define([CHECK_STRINGI_SET],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([tower library])
m4_define([CHECK_TOWER],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([u8_istream])
AT_SETUP([read ASCII])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([zip])
AT_SETUP([Basic zip - unzip test])
names="$names $bn";
done
-(cd $dir1 && $abs_top_builddir/tests/libpspp/zip-test w foo.zip $names)
+(cd $dir1 && zip-test w foo.zip $names)
mkdir -p $dir2
cp $dir1/foo.zip $dir2
cd $dir2
-$abs_top_builddir/tests/libpspp/zip-test r foo.zip $names
+zip-test r foo.zip $names
# Compare the files to their originals
for f in $names; do
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Chart Geometry])
AT_SETUP([Chart Scale])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([calculating moments])
m4_define([MOMENTS_TESTCASES],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([random distributions])
m4_divert_push([PREPARE_TESTS])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([ASCII driver -- rendering corner cases])
AT_SETUP([ASCII driver overwriting single-width text])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([CHARTS Rudimentary run tests])
dnl Check that the charts work
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([HTML driver])
AT_SETUP([HTML bug])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([output drivers])
m4_define([OUTPUT_UNWRITABLE_DIR],
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([output -- paper sizes])
AT_SETUP([letter default paper size])
-# +-+---+-+-+-+
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl # +-+---+-+-+-+
# |a|bcd|e|f|i|
# +-+-+-+-+g+-+
# |j|m|nop|h|q|
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([output -- tables])
AT_SETUP([OUTPUT precision])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([Perl module tests])
dnl This command can be used to run with the PSPP Perl module after it has been
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
+
AT_INIT
# Define SKIP_IF for compatibility with Autotest before 2.64
+/*
+PSPP - a program for statistical analysis.
+Copyright (C) 2017 Free Software Foundation, Inc.
+
+This program 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.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
#include <config.h>
#include "ui/syntax-gen.h"
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([SYNTAX GENERATOR])
AT_SETUP([Syntax Generation - printf like])
+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([PSPP terminal UI])
AT_SETUP([nonexistent syntax file crash])
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program 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.
+#
+# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
+#
bin_PROGRAMS += utilities/pspp-dump-sav
dist_man_MANS += utilities/pspp-dump-sav.1
utilities_pspp_dump_sav_SOURCES = \