manual now includes all the commands
authorBen Pfaff <blp@cs.stanford.edu>
Fri, 9 May 2025 15:26:29 +0000 (08:26 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Fri, 9 May 2025 15:26:29 +0000 (08:26 -0700)
17 files changed:
rust/doc/src/SUMMARY.md
rust/doc/src/commands/control/define.md
rust/doc/src/commands/control/do-if.md
rust/doc/src/commands/control/do-repeat.md
rust/doc/src/commands/control/loop.md
rust/doc/src/commands/data-io/begin-data.md
rust/doc/src/commands/data-io/input-program.md
rust/doc/src/commands/matrix/matrix.md
rust/doc/src/commands/utilities/output.md [new file with mode: 0644]
rust/doc/src/commands/utilities/permissions.md [new file with mode: 0644]
rust/doc/src/commands/utilities/preserve.md [new file with mode: 0644]
rust/doc/src/commands/utilities/set.md [new file with mode: 0644]
rust/doc/src/commands/utilities/show.md [new file with mode: 0644]
rust/doc/src/commands/utilities/subtitle.md [new file with mode: 0644]
rust/doc/src/commands/utilities/title.md [new file with mode: 0644]
rust/doc/src/language/datasets/variables.md
rust/doc/src/language/expressions/functions/mathematical.md

index 13814f617987de68c56c78f0816aa0fc415d5ce0..f5ae0d5e4befe4476046e493cd3ac66a4b5c5e1f 100644 (file)
@@ -42,7 +42,7 @@
 # Command Syntax
 
 - [Working with Text Files](commands/data-io/index.md)
-  - [BEGIN DATA](commands/data-io/begin-data.md)
+  - [BEGIN DATA…END DATA](commands/data-io/begin-data.md)
   - [CLOSE FILE HANDLE](commands/data-io/close-file-handle.md)
   - [DATAFILE ATTRIBUTE](commands/data-io/datafile-attribute.md)
   - [DATASET commands](commands/data-io/dataset.md)
@@ -50,7 +50,7 @@
   - [END CASE](commands/data-io/end-case.md)
   - [END FILE](commands/data-io/end-file.md)
   - [FILE HANDLE](commands/data-io/file-handle.md)
-  - [INPUT PROGRAM](commands/data-io/input-program.md)
+  - [INPUT PROGRAM…END INPUT PROGRAM](commands/data-io/input-program.md)
   - [LIST](commands/data-io/list.md)
   - [NEW FILE](commands/data-io/new-file.md)
   - [PRINT](commands/data-io/print.md)
   - [WEIGHT](commands/selection/weight.md)
 - [Conditionals and Loops](commands/control/index.md)
   - [BREAK](commands/control/break.md)
-  - [DEFINE](commands/control/define.md)
-  - [DO IF](commands/control/do-if.md)
-  - [DO REPEAT](commands/control/do-repeat.md)
-  - [LOOP](commands/control/loop.md)
+  - [DEFINE…!ENDDEFINE](commands/control/define.md)
+  - [DO IF…END IF](commands/control/do-if.md)
+  - [DO REPEAT…END REPEAT](commands/control/do-repeat.md)
+  - [LOOP…END LOOP](commands/control/loop.md)
 - [Statistics](commands/statistics/index.md)
   - [DESCRIPTIVES](commands/statistics/descriptives.md)
   - [FREQUENCIES](commands/statistics/frequencies.md)
 - [Matrices](commands/matrix/index.md)
   - [MATRIX DATA](commands/matrix/matrix-data.md)
   - [MCONVERT](commands/matrix/mconvert.md)
-  - [MATRIX](commands/matrix/matrix.md)
+  - [MATRIX…END MATRIX](commands/matrix/matrix.md)
 - [Utilities](commands/utilities/index.md)
   - [ADD DOCUMENT](commands/utilities/add-document.md)
   - [CACHE](commands/utilities/cache.md)
   - [HOST](commands/utilities/host.md)
   - [INCLUDE](commands/utilities/include.md)
   - [INSERT](commands/utilities/insert.md)
+  - [OUTPUT](commands/utilities/output.md)
+  - [PERMISSIONS](commands/utilities/permissions.md)
+  - [PRESERVE…RESTORE](commands/utilities/preserve.md)
+  - [SET](commands/utilities/set.md)
+  - [SHOW](commands/utilities/show.md)
+  - [SUBTITLE](commands/utilities/subtitle.md)
+  - [TITLE](commands/utilities/title.md)
 
 # Developer Documentation
 
index 922b01a9e81f10b945bc181e29985c37556b2730..ce96e6c16a007b49a0d62a489b48dea5e139af20 100644 (file)
@@ -1,4 +1,4 @@
-# DEFINE
+# DEFINE…!ENDDEFINE
 
 <!-- toc -->
 
index b6b2022e9ae574d5f66f0378555d52c828c007b0..a4a36ebe6324d045b5cb9814688d5fef03bd6f85 100644 (file)
@@ -1,4 +1,4 @@
-# DO IF
+# DO IF…END IF
 
 ```
 DO IF condition.
index 20b029f443ecdfecb416db5ad01ab700a6b3af60..79fa075f8d94db382af13099850e4dde5d791307 100644 (file)
@@ -1,4 +1,4 @@
-# DO REPEAT
+# DO REPEAT…END REPEAT
 
 ```
 DO REPEAT dummy_name=expansion....
index 6e98418c057069cf941214a658e51c7f5614dcfc..0f914682011c9fa0ba3eec9e6ce96b5c8b61d16a 100644 (file)
@@ -1,4 +1,4 @@
-# LOOP
+# LOOP…END LOOP
 
 ```
 LOOP [INDEX_VAR=START TO END [BY INCR]] [IF CONDITION].
index 2309e32754da6c7bf20e2dfa7ba68d097d010a5a..f75c1b005d0c349e5af58da17b439e7c50dd5271 100644 (file)
@@ -1,4 +1,4 @@
-# BEGIN DATA
+# BEGIN DATA…END DATA
 
 ```
 BEGIN DATA.
index 8a31d140952f5b5b60fe750e306cf0483b985a75..9c3a2d66bea3fa3911e87ae96650a79d8c2937c4 100644 (file)
@@ -1,4 +1,4 @@
-# INPUT PROGRAM
+# INPUT PROGRAM…END INPUT PROGRAM
 
 ```
 INPUT PROGRAM.
index 85fdac56a55897ddc6d08df2ef1646f81da67b75..8a9d86b4d4b80d86c1f4d457df130621ff01efc2 100644 (file)
@@ -1,4 +1,4 @@
-# MATRIX
+# MATRIX…END MATRIX
 
 <!-- toc -->
 
diff --git a/rust/doc/src/commands/utilities/output.md b/rust/doc/src/commands/utilities/output.md
new file mode 100644 (file)
index 0000000..2e32bb8
--- /dev/null
@@ -0,0 +1,43 @@
+# OUTPUT
+
+In the syntax below, the characters `[` and `]` are literals.  They
+must appear in the syntax to be interpreted:
+
+```
+OUTPUT MODIFY
+     /SELECT TABLES
+     /TABLECELLS SELECT = [ CLASS... ]
+     FORMAT = FMT_SPEC.
+```
+
+`OUTPUT` changes the appearance of the tables in which results are
+printed.  In particular, it can be used to set the format and precision
+to which results are displayed.
+
+After running this command, the default table appearance parameters
+will have been modified and each new output table generated uses the new
+parameters.
+
+Following `/TABLECELLS SELECT =` a list of cell classes must appear,
+enclosed in square brackets.  This list determines the classes of values
+should be selected for modification.  Each class can be:
+
+* `RESIDUAL`: Residual values.  Default: `F40.2`.
+
+* `CORRELATION`: Correlations.  Default: `F40.3`.
+
+* `PERCENT`: Percentages.  Default: `PCT40.1`.
+
+* `SIGNIFICANCE`: Significance of tests (p-values).  Default: `F40.3`.
+
+* `COUNT`: Counts or sums of weights.  For a weighted data set, the
+  default is the weight variable's print format.  For an unweighted
+  data set, the default is `F40.0`.
+
+For most other numeric values that appear in tables, `SET FORMAT` may
+be used to specify the format (*note SET FORMAT::).
+
+`FMT_SPEC` must be a valid [output
+format](../../language/datasets/formats/index.md).  Not all possible
+formats are meaningful for all classes.
+
diff --git a/rust/doc/src/commands/utilities/permissions.md b/rust/doc/src/commands/utilities/permissions.md
new file mode 100644 (file)
index 0000000..61e692f
--- /dev/null
@@ -0,0 +1,17 @@
+# PERMISSIONS
+
+```
+PERMISSIONS
+        FILE='FILE_NAME'
+        /PERMISSIONS = {READONLY,WRITEABLE}.
+```
+
+`PERMISSIONS` changes the permissions of a file.  There is one
+mandatory subcommand which specifies the permissions to which the file
+should be changed.  If you set a file's permission to `READONLY`, then
+the file will become unwritable either by you or anyone else on the
+system.  If you set the permission to `WRITEABLE`, then the file becomes
+writeable by you; the permissions afforded to others are unchanged.
+This command cannot be used if the `SAFER` (*note SET::) setting is
+active.
+
diff --git a/rust/doc/src/commands/utilities/preserve.md b/rust/doc/src/commands/utilities/preserve.md
new file mode 100644 (file)
index 0000000..cbff68f
--- /dev/null
@@ -0,0 +1,13 @@
+# PRESERVE…RESTORE
+
+```
+PRESERVE.
+...
+RESTORE.
+```
+
+`PRESERVE` saves all of the settings that `SET` (*note SET::) can
+adjust.  A later `RESTORE` command restores those settings.
+
+`PRESERVE` can be nested up to five levels deep.
+
diff --git a/rust/doc/src/commands/utilities/set.md b/rust/doc/src/commands/utilities/set.md
new file mode 100644 (file)
index 0000000..b597bab
--- /dev/null
@@ -0,0 +1,412 @@
+# SET
+
+```
+SET
+
+(data input)
+        /BLANKS={SYSMIS,'.',number}
+        /DECIMAL={DOT,COMMA}
+        /FORMAT=FMT_SPEC
+        /EPOCH={AUTOMATIC,YEAR}
+        /RIB={NATIVE,MSBFIRST,LSBFIRST}
+
+(interaction)
+        /MXERRS=MAX_ERRS
+        /MXWARNS=MAX_WARNINGS
+        /WORKSPACE=WORKSPACE_SIZE
+
+(syntax execution)
+        /LOCALE='LOCALE'
+        /MXLOOPS=MAX_LOOPS
+        /SEED={RANDOM,SEED_VALUE}
+        /UNDEFINED={WARN,NOWARN}
+        /FUZZBITS=FUZZBITS
+        /SCALEMIN=COUNT
+
+(data output)
+        /CC{A,B,C,D,E}={'NPRE,PRE,SUF,NSUF','NPRE.PRE.SUF.NSUF'}
+        /DECIMAL={DOT,COMMA}
+        /FORMAT=FMT_SPEC
+        /LEADZERO={ON,OFF}
+        /MDISPLAY={TEXT,TABLES}
+        /SMALL=NUMBER
+        /WIB={NATIVE,MSBFIRST,LSBFIRST}
+
+(output routing)
+        /ERRORS={ON,OFF,TERMINAL,LISTING,BOTH,NONE}
+        /MESSAGES={ON,OFF,TERMINAL,LISTING,BOTH,NONE}
+        /PRINTBACK={ON,OFF,TERMINAL,LISTING,BOTH,NONE}
+        /RESULTS={ON,OFF,TERMINAL,LISTING,BOTH,NONE}
+
+(output driver options)
+        /HEADERS={NO,YES,BLANK}
+        /LENGTH={NONE,N_LINES}
+        /WIDTH={NARROW,WIDTH,N_CHARACTERS}
+        /TNUMBERS={VALUES,LABELS,BOTH}
+        /TVARS={NAMES,LABELS,BOTH}
+        /TLOOK={NONE,FILE}
+
+(logging)
+        /JOURNAL={ON,OFF} ['FILE_NAME']
+
+(system files)
+        /SCOMPRESSION={ON,OFF}
+
+(miscellaneous)
+        /SAFER=ON
+        /LOCALE='STRING'
+
+(macros)
+        /MEXPAND={ON,OFF}
+        /MPRINT={ON,OFF}
+        /MITERATE=NUMBER
+        /MNEST=NUMBER
+
+(settings not yet implemented, but accepted and ignored)
+        /BASETEXTDIRECTION={AUTOMATIC,RIGHTTOLEFT,LEFTTORIGHT}
+        /BLOCK='C'
+        /BOX={'XXX','XXXXXXXXXXX'}
+        /CACHE={ON,OFF}
+        /CELLSBREAK=NUMBER
+        /COMPRESSION={ON,OFF}
+        /CMPTRANS={ON,OFF}
+        /HEADER={NO,YES,BLANK}
+```
+
+`SET` allows the user to adjust several parameters relating to PSPP's
+execution.  Since there are many subcommands to this command, its
+subcommands are examined in groups.
+
+For subcommands that take boolean values, `ON` and `YES` are
+synonymous, as are `OFF` and `NO`, when used as subcommand values.
+
+The data input subcommands affect the way that data is read from data
+files.  The data input subcommands are
+
+* `BLANKS`  
+  This is the value assigned to an item data item that is empty or
+  contains only white space.  An argument of SYSMIS or '.'  causes
+  the system-missing value to be assigned to null items.  This is the
+  default.  Any real value may be assigned.
+
+* `DECIMAL`  
+  This value may be set to `DOT` or `COMMA`.  Setting it to `DOT`
+  causes the decimal point character to be `.` and the grouping
+  character to be `,`.  Setting it to `COMMA` causes the decimal
+  point character to be `,` and the grouping character to be `.`.  If
+  the setting is `COMMA`, then `,` is not treated as a field
+  separator in the `DATA LIST` command (*note DATA LIST::).  The
+  default value is determined from the system locale.
+
+* `FORMAT`  
+  Allows the default numeric input/output format to be specified.
+  The default is F8.2.  *Note Input and Output Formats::.
+
+* `EPOCH`  
+  Specifies the range of years used when a 2-digit year is read from
+  a data file or used in a date construction expression (*note Date
+  Construction::).  If a 4-digit year is specified for the epoch,
+  then 2-digit years are interpreted starting from that year, known
+  as the epoch.  If `AUTOMATIC` (the default) is specified, then the
+  epoch begins 69 years before the current date.
+
+* `RIB`  
+  PSPP extension to set the byte ordering (endianness) used for
+  reading data in [`IB` or `PIB`
+  format](../../language/datasets/formats/binary-and-hex.md#ib-and-pib-formats).  In
+  `MSBFIRST` ordering, the most-significant byte appears at the left
+  end of a IB or PIB field.  In `LSBFIRST` ordering, the
+  least-significant byte appears at the left end.  `NATIVE`, the
+  default, is equivalent to `MSBFIRST` or `LSBFIRST` depending on the
+  native format of the machine running PSPP.
+
+Interaction subcommands affect the way that PSPP interacts with an
+online user.  The interaction subcommands are
+
+* `MXERRS`  
+  The maximum number of errors before PSPP halts processing of the
+  current command file.  The default is 50.
+
+* `MXWARNS`  
+  The maximum number of warnings + errors before PSPP halts
+  processing the current command file.  The special value of zero
+  means that all warning situations should be ignored.  No warnings
+  are issued, except a single initial warning advising you that
+  warnings will not be given.  The default value is 100.
+
+Syntax execution subcommands control the way that PSPP commands
+execute.  The syntax execution subcommands are
+
+* `LOCALE`  
+  Overrides the system locale for the purpose of reading and writing
+  syntax and data files.  The argument should be a locale name in the
+  general form `LANGUAGE_COUNTRY.ENCODING`, where `LANGUAGE` and
+  `COUNTRY` are 2-character language and country abbreviations,
+  respectively, and `ENCODING` is an [IANA character set
+  name](http://www.iana.org/assignments/character-sets). Example
+  locales are `en_US.UTF-8` (UTF-8 encoded English as spoken in the
+  United States) and `ja_JP.EUC-JP` (EUC-JP encoded Japanese as spoken
+  in Japan).
+
+* `MXLOOPS`  
+  The maximum number of iterations for an uncontrolled
+  [`LOOP`](../../commands/control/loop.md), and for any [loop in the
+  matrix
+  language](../../commands/matrix/matrix.md#the-loop-and-break-commands).
+  The default `MXLOOPS` is 40.
+
+* `SEED`  
+  The initial pseudo-random number seed.  Set it to a real number or
+  to `RANDOM`, to obtain an initial seed from the current time of day.
+
+* `UNDEFINED`  
+  Currently not used.
+
+* `FUZZBITS`  
+  The maximum number of bits of errors in the least-significant places
+  to accept for rounding up a value that is almost halfway between two
+  possibilities for rounding with the
+  [RND](../../language/expressions/functions/mathematical.md#rnd).  The default
+  FUZZBITS is 6.
+
+* `SCALEMIN`  
+  The minimum number of distinct valid values for PSPP to assume that
+  a variable has a scale [measurement
+  level](../../language/datasets/variables.md#measurement-level).
+
+* `WORKSPACE`  
+  The maximum amount of memory (in kilobytes) that PSPP uses to store
+  data being processed.  If memory in excess of the workspace size is
+  required, then PSPP starts to use temporary files to store the
+  data.  Setting a higher value means that procedures run faster, but
+  may cause other applications to run slower.  On platforms without
+  virtual memory management, setting a very large workspace may cause
+  PSPP to abort.
+
+Data output subcommands affect the format of output data.  These
+subcommands are
+
+* `CCA`  
+  `CCB`  
+  `CCC`  
+  `CCD`  
+  `CCE`  
+  Set up [custom currency
+  formats](../../language/datasets/formats/custom-currency.md).
+
+* `DECIMAL`  
+  The default `DOT` setting causes the decimal point character to be
+  `.`.  A setting of `COMMA` causes the decimal point character to be
+  `,`.
+
+* `FORMAT`  
+  Allows the default numeric [input/output
+  format](../../language/datasets/formats/index.md) to be specified.  The
+  default is `F8.2`.
+
+* `LEADZERO`  
+  Controls whether numbers with magnitude less than one are displayed
+  with a zero before the decimal point.  For example, with `SET
+  LEADZERO=OFF`, which is the default, one-half is shown as 0.5, and
+  with `SET LEADZERO=ON`, it is shown as .5.  This setting affects
+  only the `F`, `COMMA`, and `DOT` formats.
+
+* `MDISPLAY`  
+  Controls how the
+  [`PRINT`](../../commands/matrix/matrix.md#the-print-command) command
+  within [`MATRIX`...`END MATRIX`](../../commands/matrix/matrix.md)
+  outputs matrices.  With the default `TEXT`, `PRINT` outputs matrices
+  as text.  Change this setting to `TABLES` to instead output matrices
+  as pivot tables.
+
+* `SMALL`  
+  This controls how PSPP formats small numbers in pivot tables, in
+  cases where PSPP does not otherwise have a well-defined format for
+  the numbers.  When such a number has a magnitude less than the
+  value set here, PSPP formats the number in scientific notation;
+  otherwise, it formats it in standard notation.  The default is
+  0.0001.  Set a value of 0 to disable scientific notation.
+
+* `WIB`  
+  PSPP extension to set the byte ordering (endianness) used for
+  writing data in [`IB` or `PIB`
+  format](../../language/datasets/formats/binary-and-hex.md#ib-and-pib-formats).
+  In `MSBFIRST` ordering, the most-significant byte appears at the
+  left end of a IB or PIB field.  In `LSBFIRST` ordering, the
+  least-significant byte appears at the left end.  `NATIVE`, the
+  default, is equivalent to `MSBFIRST` or `LSBFIRST` depending on the
+  native format of the machine running PSPP.
+
+In the PSPP text-based interface, the output routing subcommands
+affect where output is sent.  The following values are allowed for each
+of these subcommands:
+
+* `OFF`  
+  `NONE`  
+  Discard this kind of output.
+
+* `TERMINAL`  
+  Write this output to the terminal, but not to listing files and
+  other output devices.
+
+* `LISTING`  
+  Write this output to listing files and other output devices, but
+  not to the terminal.
+
+* `ON`  
+  `BOTH`  
+  Write this type of output to all output devices.
+
+These output routing subcommands are:
+
+* `ERRORS`  
+  Applies to error and warning messages.  The default is `BOTH`.
+
+* `MESSAGES`  
+  Applies to notes.  The default is `BOTH`.
+
+* `PRINTBACK`  
+  Determines whether the syntax used for input is printed back as
+  part of the output.  The default is `NONE`.
+
+* `RESULTS`  
+  Applies to everything not in one of the above categories, such as
+  the results of statistical procedures.  The default is `BOTH`.
+
+These subcommands have no effect on output in the PSPP GUI
+environment.
+
+Output driver option subcommands affect output drivers' settings.
+These subcommands are
+
+* `HEADERS`  
+  `LENGTH`  
+  `WIDTH`  
+  `TNUMBERS`  
+  The `TNUMBERS` option sets the way in which values are displayed in
+  output tables.  The valid settings are `VALUES`, `LABELS` and
+  `BOTH`.  If `TNUMBERS` is set to `VALUES`, then all values are
+  displayed with their literal value (which for a numeric value is a
+  number and for a string value an alphanumeric string).  If
+  `TNUMBERS` is set to `LABELS`, then values are displayed using their
+  assigned [value labels](../../commands/variables/value-labels.md), if
+  any.  If the value has no label, then the literal value is used for
+  display.  If `TNUMBERS` is set to `BOTH`, then values are displayed
+  with both their label (if any) and their literal value in
+  parentheses.
+
+* `TVARS`  
+  The `TVARS` option sets the way in which variables are displayed in
+  output tables.  The valid settings are `NAMES`, `LABELS` and `BOTH`.
+  If `TVARS` is set to `NAMES`, then all variables are displayed using
+  their names.  If `TVARS` is set to `LABELS`, then variables are
+  displayed using their [variable
+  label](../../commands/variables/variable-labels.md), if one has been
+  set.  If no label has been set, then the name is used.  If `TVARS`
+  is set to `BOTH`, then variables are displayed with both their label
+  (if any) and their name in parentheses.
+
+* `TLOOK`  
+  The `TLOOK` option sets the style used for subsequent table output.
+  Specifying `NONE` makes PSPP use the default built-in style.
+  Otherwise, specifying FILE makes PSPP search for an `.stt` or
+  `.tlo` file in the same way as specifying `--table-look=FILE` the
+  PSPP command line (*note Main Options::).
+
+Logging subcommands affect logging of commands executed to external
+files.  These subcommands are
+
+* `JOURNAL`  
+  `LOG`  
+  These subcommands, which are synonyms, control the journal.  The
+  default is `ON`, which causes commands entered interactively to be
+  written to the journal file.  Commands included from syntax files
+  that are included interactively and error messages printed by PSPP
+  are also written to the journal file, prefixed by `>`.  `OFF`
+  disables use of the journal.
+
+  The journal is named `pspp.jnl` by default.  A different name may
+  be specified.
+
+System file subcommands affect the default format of system files
+produced by PSPP.  These subcommands are
+
+* `SCOMPRESSION`  
+  Whether system files created by `SAVE` or `XSAVE` are compressed by
+  default.  The default is `ON`.
+
+Security subcommands affect the operations that commands are allowed
+to perform.  The security subcommands are
+
+* `SAFER`  
+  Setting this option disables the following operations:
+
+     - The `ERASE` command.
+     - The `HOST` command.
+     - The `PERMISSIONS` command.
+     - Pipes (file names beginning or ending with `|`).
+
+  Be aware that this setting does not guarantee safety (commands can
+  still overwrite files, for instance) but it is an improvement.
+  When set, this setting cannot be reset during the same session, for
+  obvious security reasons.
+
+* `LOCALE`  
+  This item is used to set the default character encoding.  The
+  encoding may be specified either as an [IANA encoding name or
+  alias](http://www.iana.org/assignments/character-sets), or as a
+  locale name.  If given as a locale name, only the character encoding
+  of the locale is relevant.
+
+  System files written by PSPP use this encoding.  System files read
+  by PSPP, for which the encoding is unknown, are interpreted using
+  this encoding.
+
+  The full list of valid encodings and locale names/alias are
+  operating system dependent.  The following are all examples of
+  acceptable syntax on common GNU/Linux systems.
+
+  ```
+  SET LOCALE='iso-8859-1'.
+
+  SET LOCALE='ru_RU.cp1251'.
+
+  SET LOCALE='japanese'.
+  ```
+
+  Contrary to intuition, this command does not affect any aspect of
+  the system's locale.
+
+The following subcommands affect the interpretation of macros.
+
+* `MEXPAND`  
+  Controls whether macros are expanded.  The default is `ON`.
+
+* `MPRINT`  
+  Controls whether the expansion of macros is included in output.
+  This is separate from whether command syntax in general is included
+  in output.  The default is `OFF`.
+
+* `MITERATE`  
+  Limits the number of iterations executed in
+  [`!DO`](../../commands/control/define.md#macro-loops) loops within
+  macros.  This does not affect other language constructs such as
+  [`LOOP`…`END LOOP`](../../commands/control/loop.md).  This must be set to a
+  positive integer.  The default is 1000.
+
+* `MNEST`  
+  Limits the number of levels of nested macro expansions.  This must
+  be set to a positive integer.  The default is 50.
+
+The following subcommands are not yet implemented, but PSPP accepts
+them and ignores the settings:
+
+* `BASETEXTDIRECTION`
+* `BLOCK`
+* `BOX`
+* `CACHE`
+* `CELLSBREAK`
+* `COMPRESSION`
+* `CMPTRANS`
+* `HEADER`
+
diff --git a/rust/doc/src/commands/utilities/show.md b/rust/doc/src/commands/utilities/show.md
new file mode 100644 (file)
index 0000000..8daecd3
--- /dev/null
@@ -0,0 +1,69 @@
+# SHOW
+
+```
+SHOW
+        [ALL]
+        [BLANKS]
+        [CC]
+        [CCA]
+        [CCB]
+        [CCC]
+        [CCD]
+        [CCE]
+        [COPYING]
+        [DECIMAL]
+        [DIRECTORY]
+        [ENVIRONMENT]
+        [FORMAT]
+        [FUZZBITS]
+        [LENGTH]
+        [MEXPAND]
+        [MPRINT]
+        [MITERATE]
+        [MNEST]
+        [MXERRS]
+        [MXLOOPS]
+        [MXWARNS]
+        [N]
+        [SCOMPRESSION]
+        [SYSTEM]
+        [TEMPDIR]
+        [UNDEFINED]
+        [VERSION]
+        [WARRANTY]
+        [WEIGHT]
+        [WIDTH]
+```
+
+`SHOW` displays PSPP's settings and status.  Parameters that can be
+changed using [`SET`](set.md), can be examined using `SHOW` using the
+subcommand with the same name.  `SHOW` supports the following
+additional subcommands:
+
+* `ALL`  
+  Show all settings.
+* `CC`  
+  Show all custom currency settings (`CCA` through `CCE`).
+* `DIRECTORY`  
+  Shows the current working directory.
+* `ENVIRONMENT`  
+  Shows the operating system details.
+* `N`  
+  Reports the number of cases in the active dataset.  The reported
+  number is not weighted.  If no dataset is defined, then `Unknown`
+  is reported.
+* `SYSTEM`  
+  Shows information about how PSPP was built.  This information is
+  useful in bug reports.  *Note Bugs::, for details.
+* `TEMPDIR`  
+  Shows the path of the directory where temporary files are stored.
+* `VERSION`  
+  Shows the version of this installation of PSPP.
+* `WARRANTY`  
+  Show details of the lack of warranty for PSPP.
+* `COPYING` or `LICENSE`  
+  Display the terms of PSPP's copyright licence (*note License::).
+
+Specifying `SHOW` without any subcommands is equivalent to `SHOW
+ALL`.
+
diff --git a/rust/doc/src/commands/utilities/subtitle.md b/rust/doc/src/commands/utilities/subtitle.md
new file mode 100644 (file)
index 0000000..70fa4ee
--- /dev/null
@@ -0,0 +1,16 @@
+# SUBTITLE
+
+```
+SUBTITLE 'SUBTITLE_STRING'.
+  or
+SUBTITLE SUBTITLE_STRING.
+```
+
+`SUBTITLE` provides a subtitle to a particular PSPP run.  This
+subtitle appears at the top of each output page below the title, if
+headers are enabled on the output device.
+
+Specify a subtitle as a string in quotes.  The alternate syntax that
+did not require quotes is now obsolete.  If it is used then the subtitle
+is converted to all uppercase.
+
diff --git a/rust/doc/src/commands/utilities/title.md b/rust/doc/src/commands/utilities/title.md
new file mode 100644 (file)
index 0000000..e8489e4
--- /dev/null
@@ -0,0 +1,16 @@
+# TITLE
+
+```
+TITLE 'TITLE_STRING'.
+  or
+TITLE TITLE_STRING.
+```
+
+`TITLE` provides a title to a particular PSPP run.  This title
+appears at the top of each output page, if headers are enabled on the
+output device.
+
+Specify a title as a string in quotes.  The alternate syntax that did
+not require quotes is now obsolete.  If it is used then the title is
+converted to all uppercase.
+
index 74dae3f42c2d5cf77ef9b1fe32545f55060e5feb..cda02de01ff47f164995da5c950863cc45872179 100644 (file)
@@ -67,7 +67,7 @@ Each variable has a number of attributes, including:
   Similar to print format, but used by the `WRITE` command (*note
   WRITE::).
 
-* Measurement level  
+* <a name="measurement-level">Measurement level</a>  
   One of the following:
 
   - *Nominal*: Each value of a nominal variable represents a distinct
index 6181e8669e1c791e62579b9364e09a9d4ca07d14..e3ff8f0e787da3706162f95d7df54424f3427a82 100644 (file)
@@ -30,7 +30,7 @@ results.
   Returns the remainder when `X` is divided by 10.  If `X` is
   negative, `MOD10(X)` is negative or zero.
 
-* `RND(X [, MULT[, FUZZBITS]])`  
+* <a name="rnd">`RND(X [, MULT[, FUZZBITS]])`</a>  
   Rounds `X` and rounds it to a multiple of `MULT` (by default 1).
   Halves are rounded away from zero, as are values that fall short of
   halves by less than `FUZZBITS` of errors in the least-significant