1 /* PSPP - computes sample statistics.
2 Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
3 Written by Ben Pfaff <blp@gnu.org>.
5 This program is free software; you can redistribute it and/or
6 modify it under the terms of the GNU General Public License as
7 published by the Free Software Foundation; either version 2 of the
8 License, or (at your option) any later version.
10 This program is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
23 /* Table of mode settings (x=X, w=Windows, p=PC+, f=has relevance for
29 BLKSIZE: x (only on SHOW, not on SET)
32 BUFNO: x (only on SHOW, not on SET)
36 COMP/COMPRESSION: xwpf (meaning varies between p and xw)
53 JOURNAL: wf (equivalent to LOG)
56 LOG: pf (equivalent to JOURNAL)
70 N: xw (only on SHOW, not on SET)
72 NUMBERED: x (only on SHOW, not on SET)
79 RESULTS: wpf (semantics differ)
81 SCOMP/SCOMPRESSION: xwf
84 SEED: xwpf (semantics differ)
85 SYSMIS: xwf (only on SHOW, not on SET)
92 WEIGHT: xwf (only on SHOW, not on SET)
97 $VARS: wf (only on SHOW, not on SET)
104 /* The value that blank numeric fields are set to when read in;
106 extern double set_blanks;
108 /* Describes one custom currency specification. */
109 struct set_cust_currency
111 char buf[32]; /* Buffer for strings. */
112 char *neg_prefix; /* Negative prefix. */
113 char *prefix; /* Prefix. */
114 char *suffix; /* Suffix. */
115 char *neg_suffix; /* Negative suffix. */
116 int decimal; /* Decimal point. */
117 int grouping; /* Grouping character. */
120 /* CCA through CCE. */
121 extern struct set_cust_currency set_cc[5];
123 /* Whether the active file should be compressed. */
124 extern int set_compression;
126 /* Characters per inch (horizontal). */
129 /* Continuation prompt. */
130 extern char *set_cprompt;
132 /* The character used for a decimal point: ',' or '.'. Only respected
133 for data input and output. */
134 extern int set_decimal;
136 /* The character used for grouping in numbers: '.' or ','; the
137 opposite of set_decimal. Only used in COMMA data input and
139 extern int set_grouping;
141 /* Prompt used for lines between BEGIN DATA and END DATA. */
142 extern char *set_dprompt;
144 /* Whether we echo commands to the listing file/printer; 0=no, 1=yes. */
147 /* The character used to terminate commands. */
148 extern int set_endcmd;
150 /* Types of routing. */
153 SET_ROUTE_SCREEN = 001, /* Output to screen devices? */
154 SET_ROUTE_LISTING = 002, /* Output to listing devices? */
155 SET_ROUTE_OTHER = 004, /* Output to other devices? */
156 SET_ROUTE_DISABLE = 010 /* Disable output--overrides all other bits. */
159 /* Routing for errors, messages, and procedure results. */
160 extern int set_errors, set_messages, set_results;
162 /* Whether an error stops execution; 0=no, 1=yes. */
163 extern int set_errorbreak;
165 /* Default format for variables created by transformations and by DATA
167 extern struct fmt_spec set_format;
169 /* I don't know what this setting means; 0=no, 1=yes, 2=blank. */
170 extern int set_headers;
172 /* If set_echo is on, whether commands from include files are echoed;
174 extern int set_include;
176 /* Journal file's name. */
177 extern char *set_journal;
179 /* Whether we're journaling. */
180 extern int set_journaling;
182 /* Lines per inch (vertical). */
185 /* 0=macro expansion is disabled, 1=macro expansion is enabled. */
186 extern int set_mexpand;
188 /* Maximum number of iterations in a macro loop. */
189 extern int set_miterate;
191 /* Maximum nesting level for macros. */
192 extern int set_mnest;
194 /* Whether we pause after each screen of output; 0=no, 1=yes. */
197 /* Independent of set_printback, controls whether the commands
198 generated by macro invocations are displayed. */
199 extern int set_mprint;
201 /* Maximum number of errors. */
202 extern int set_mxerrs;
204 /* Implied limit of unbounded loop. */
205 extern int set_mxloops;
207 /* Maximum number of warnings + errors. */
208 extern int set_mxwarns;
210 /* Whether a blank line is a command terminator; 0=no, 1=yes. */
211 extern int set_nullline;
213 /* Whether commands are written to the display; 0=off, 1=on. */
214 extern int set_printback;
216 #if !USE_INTERNAL_PAGER
217 /* Name of the pager program. */
218 extern char *set_pager;
219 #endif /* !USE_INTERNAL_PAGER */
221 /* The command prompt. */
222 extern char *set_prompt;
224 /* Name of the results file. */
225 extern char *set_results_file;
227 /* Whether to allow certain unsafe operations. Cannot be unset after
229 extern int set_safer;
231 /* Whether save files should be compressed by default. */
232 extern int set_scompression;
234 /* The random number seed; NOT_LONG if we want a "random" random
236 extern long set_seed;
238 /* 1=The user has modified or made use of the random number seed. */
239 extern int set_seed_used;
241 /* 1=Turn on some heuristics that make testing PSPP for correct
242 workings a little easier. */
243 extern int set_testing_mode;
245 /* Whether to warn on undefined values in numeric data. */
246 extern int set_undefined;
248 /* Requested "view length" in lines. */
249 extern int set_viewlength;
252 extern int set_viewwidth;
254 /* Approximate maximum amount of memory to use for cases, in
256 extern size_t set_max_workspace;
258 #endif /* !settings_h */