[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pspp-cvs] pspp doc/utilities.texi po/de.po po/pspp.pot sr...
From: |
John Darrington |
Subject: |
[Pspp-cvs] pspp doc/utilities.texi po/de.po po/pspp.pot sr... |
Date: |
Thu, 03 May 2007 10:15:27 +0000 |
CVSROOT: /sources/pspp
Module name: pspp
Changes by: John Darrington <jmd> 07/05/03 10:15:27
Modified files:
doc : utilities.texi
po : de.po pspp.pot
src/data : sys-file-writer.c
src/language : command.def
src/language/lexer: ChangeLog lexer.c lexer.h
src/language/utilities: ChangeLog title.c
tests/command : file-label.sh
Log message:
Implemented ADD DOCUMENT. Thanks to Ben Pfaff for review.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pspp/doc/utilities.texi?cvsroot=pspp&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/pspp/po/de.po?cvsroot=pspp&r1=1.49&r2=1.50
http://cvs.savannah.gnu.org/viewcvs/pspp/po/pspp.pot?cvsroot=pspp&r1=1.134&r2=1.135
http://cvs.savannah.gnu.org/viewcvs/pspp/src/data/sys-file-writer.c?cvsroot=pspp&r1=1.22&r2=1.23
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/command.def?cvsroot=pspp&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/lexer/ChangeLog?cvsroot=pspp&r1=1.24&r2=1.25
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/lexer/lexer.c?cvsroot=pspp&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/lexer/lexer.h?cvsroot=pspp&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/utilities/ChangeLog?cvsroot=pspp&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/pspp/src/language/utilities/title.c?cvsroot=pspp&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/pspp/tests/command/file-label.sh?cvsroot=pspp&r1=1.15&r2=1.16
Patches:
Index: doc/utilities.texi
===================================================================
RCS file: /sources/pspp/pspp/doc/utilities.texi,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- doc/utilities.texi 5 Nov 2006 05:20:53 -0000 1.12
+++ doc/utilities.texi 3 May 2007 10:15:26 -0000 1.13
@@ -9,6 +9,7 @@
encountered in the input.
@menu
+* ADD DOCUMENT:: Add documentary text to the active file.
* COMMENT:: Document your syntax file.
* DOCUMENT:: Document the active file.
* DISPLAY DOCUMENTS:: Display active file documents.
@@ -28,7 +29,29 @@
* TITLE:: Provide a document title.
@end menu
address@hidden COMMENT, DOCUMENT, Utilities, Utilities
address@hidden ADD DOCUMENT, COMMENT, Utilities, Utilities
address@hidden node-name, next, previous, up
address@hidden ADD DOCUMENT
address@hidden ADD DOCUMENT
+
address@hidden
+ADD DOCUMENT
+ 'line one' 'line two' @dots{} 'last line' .
address@hidden display
+
+
address@hidden DOCUMENT} adds one or more lines of descriptive commentary to
+the active file. Documents added in this way are saved to system files.
+They can be viewed using @cmd{SYSFILE INFO} or @cmd{DISPLAY
+DOCUMENTS}. They can be removed from the active file with @cmd{DROP
+DOCUMENTS}.
+
+Each line of documentary text must be enclosed in quotation marks, and
+may not be more than 80 bytes long. @xref{DOCUMENT}.
+
+
+
address@hidden COMMENT, DOCUMENT, ADD DOCUMENT, Utilities
@section COMMENT
@vindex COMMENT
@vindex *
@@ -45,12 +68,14 @@
@cmd{COMMENT} can extend over any number of lines. Don't forget to
terminate it with a dot or a blank line.
+
+
@node DOCUMENT, DISPLAY DOCUMENTS, COMMENT, Utilities
@section DOCUMENT
@vindex DOCUMENT
@display
-DOCUMENT documentary_text.
+DOCUMENT @var{documentary_text}.
@end display
@cmd{DOCUMENT} adds one or more lines of descriptive commentary to the
@@ -59,10 +84,12 @@
DOCUMENTS}. They can be removed from the active file with @cmd{DROP
DOCUMENTS}.
-Specify the documentary text following the DOCUMENT keyword. You can
-extend the documentary text over as many lines as necessary. Lines are
-truncated at 80 characters width. Don't forget to terminate
-the command with a dot or a blank line.
+Specify the @var{documentary text} following the DOCUMENT keyword.
+It is interpreted literally --- any quotes or other punctuation marks
+will be included in the file.
+You can extend the documentary text over as many lines as necessary.
+Lines are truncated at 80 bytes. Don't forget to terminate
+the command with a dot or a blank line. @xref{ADD DOCUMENT}.
@node DISPLAY DOCUMENTS, DISPLAY FILE LABEL, DOCUMENT, Utilities
@section DISPLAY DOCUMENTS
Index: po/de.po
===================================================================
RCS file: /sources/pspp/pspp/po/de.po,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -b -r1.49 -r1.50
--- po/de.po 30 Apr 2007 08:58:14 -0000 1.49
+++ po/de.po 3 May 2007 10:15:26 -0000 1.50
@@ -10,7 +10,7 @@
msgstr ""
"Project-Id-Version: PSPP 0.4.2\n"
"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2007-04-29 12:09+0800\n"
+"POT-Creation-Date: 2007-05-02 14:35+0800\n"
"PO-Revision-Date: 2006-05-26 17:49+0800\n"
"Last-Translator: John Darrington <address@hidden>\n"
"Language-Team: German <address@hidden>\n"
@@ -795,7 +795,7 @@
msgid "Error opening \"%s\" for writing as a system file: %s."
msgstr ""
-#: src/data/sys-file-writer.c:1104
+#: src/data/sys-file-writer.c:1101
#, c-format
msgid "An I/O error occurred writing system file \"%s\"."
msgstr ""
@@ -1763,11 +1763,11 @@
"s."
msgstr ""
-#: src/language/dictionary/value-labels.c:158 src/language/lexer/lexer.c:600
+#: src/language/dictionary/value-labels.c:158 src/language/lexer/lexer.c:609
msgid "expecting string"
msgstr ""
-#: src/language/dictionary/value-labels.c:167 src/language/lexer/lexer.c:614
+#: src/language/dictionary/value-labels.c:167 src/language/lexer/lexer.c:623
msgid "expecting integer"
msgstr ""
@@ -2044,54 +2044,54 @@
msgid "Syntax error at %s."
msgstr ""
-#: src/language/lexer/lexer.c:569 src/language/lexer/lexer.c:586
+#: src/language/lexer/lexer.c:578 src/language/lexer/lexer.c:595
#, c-format
msgid "expecting `%s'"
msgstr ""
-#: src/language/lexer/lexer.c:627
+#: src/language/lexer/lexer.c:636
msgid "expecting number"
msgstr ""
-#: src/language/lexer/lexer.c:639
+#: src/language/lexer/lexer.c:648
msgid "expecting identifier"
msgstr ""
-#: src/language/lexer/lexer.c:1028
+#: src/language/lexer/lexer.c:1037
msgid "binary"
msgstr ""
-#: src/language/lexer/lexer.c:1033
+#: src/language/lexer/lexer.c:1042
msgid "octal"
msgstr ""
-#: src/language/lexer/lexer.c:1038
+#: src/language/lexer/lexer.c:1047
msgid "hex"
msgstr ""
-#: src/language/lexer/lexer.c:1048
+#: src/language/lexer/lexer.c:1057
#, c-format
msgid "String of %s digits has %d characters, which is not a multiple of %d."
msgstr ""
-#: src/language/lexer/lexer.c:1077
+#: src/language/lexer/lexer.c:1086
#, c-format
msgid "`%c' is not a valid %s digit."
msgstr ""
-#: src/language/lexer/lexer.c:1111
+#: src/language/lexer/lexer.c:1120
msgid "Unterminated string constant."
msgstr ""
-#: src/language/lexer/lexer.c:1165
+#: src/language/lexer/lexer.c:1174
msgid "Unexpected end of file in string concatenation."
msgstr ""
-#: src/language/lexer/lexer.c:1173
+#: src/language/lexer/lexer.c:1182
msgid "String expected following `+'."
msgstr ""
-#: src/language/lexer/lexer.c:1186
+#: src/language/lexer/lexer.c:1195
#, c-format
msgid "String exceeds 255 characters in length (%d characters)."
msgstr ""
@@ -3415,6 +3415,24 @@
msgid "Closing `%s': %s."
msgstr ""
+#: src/language/tests/check-model.q:139
+msgid "PATH and SEARCH subcommands are mutually exclusive. Ignoring PATH."
+msgstr ""
+
+#: src/language/tests/check-model.q:157
+msgid "At least one value must be specified on PATH."
+msgstr ""
+
+#: src/language/tests/check-model.q:168
+#, c-format
+msgid "Hash bits adjusted to %d."
+msgstr ""
+
+#: src/language/tests/check-model.q:209
+#, c-format
+msgid "error opening \"%s\" for writing"
+msgstr ""
+
#: src/language/tests/float-format.c:126
#, c-format
msgid "%d-byte string needed but %d-byte string supplied."
@@ -3614,6 +3632,15 @@
msgid "Document entered %s by %s:"
msgstr ""
+#: src/language/utilities/title.c:184
+#, c-format
+msgid "(Entered %s)"
+msgstr ""
+
+#: src/language/utilities/title.c:195
+msgid "Document lines may not be more than 80 bytes long"
+msgstr ""
+
#: src/language/xforms/compute.c:147 src/language/xforms/compute.c:195
#, c-format
msgid ""
Index: po/pspp.pot
===================================================================
RCS file: /sources/pspp/pspp/po/pspp.pot,v
retrieving revision 1.134
retrieving revision 1.135
diff -u -b -r1.134 -r1.135
--- po/pspp.pot 30 Apr 2007 08:58:14 -0000 1.134
+++ po/pspp.pot 3 May 2007 10:15:26 -0000 1.135
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2007-04-29 12:09+0800\n"
+"POT-Creation-Date: 2007-05-02 14:35+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <address@hidden>\n"
"Language-Team: LANGUAGE <address@hidden>\n"
@@ -790,7 +790,7 @@
msgid "Error opening \"%s\" for writing as a system file: %s."
msgstr ""
-#: src/data/sys-file-writer.c:1104
+#: src/data/sys-file-writer.c:1101
#, c-format
msgid "An I/O error occurred writing system file \"%s\"."
msgstr ""
@@ -1758,11 +1758,11 @@
"s."
msgstr ""
-#: src/language/dictionary/value-labels.c:158 src/language/lexer/lexer.c:600
+#: src/language/dictionary/value-labels.c:158 src/language/lexer/lexer.c:609
msgid "expecting string"
msgstr ""
-#: src/language/dictionary/value-labels.c:167 src/language/lexer/lexer.c:614
+#: src/language/dictionary/value-labels.c:167 src/language/lexer/lexer.c:623
msgid "expecting integer"
msgstr ""
@@ -2039,54 +2039,54 @@
msgid "Syntax error at %s."
msgstr ""
-#: src/language/lexer/lexer.c:569 src/language/lexer/lexer.c:586
+#: src/language/lexer/lexer.c:578 src/language/lexer/lexer.c:595
#, c-format
msgid "expecting `%s'"
msgstr ""
-#: src/language/lexer/lexer.c:627
+#: src/language/lexer/lexer.c:636
msgid "expecting number"
msgstr ""
-#: src/language/lexer/lexer.c:639
+#: src/language/lexer/lexer.c:648
msgid "expecting identifier"
msgstr ""
-#: src/language/lexer/lexer.c:1028
+#: src/language/lexer/lexer.c:1037
msgid "binary"
msgstr ""
-#: src/language/lexer/lexer.c:1033
+#: src/language/lexer/lexer.c:1042
msgid "octal"
msgstr ""
-#: src/language/lexer/lexer.c:1038
+#: src/language/lexer/lexer.c:1047
msgid "hex"
msgstr ""
-#: src/language/lexer/lexer.c:1048
+#: src/language/lexer/lexer.c:1057
#, c-format
msgid "String of %s digits has %d characters, which is not a multiple of %d."
msgstr ""
-#: src/language/lexer/lexer.c:1077
+#: src/language/lexer/lexer.c:1086
#, c-format
msgid "`%c' is not a valid %s digit."
msgstr ""
-#: src/language/lexer/lexer.c:1111
+#: src/language/lexer/lexer.c:1120
msgid "Unterminated string constant."
msgstr ""
-#: src/language/lexer/lexer.c:1165
+#: src/language/lexer/lexer.c:1174
msgid "Unexpected end of file in string concatenation."
msgstr ""
-#: src/language/lexer/lexer.c:1173
+#: src/language/lexer/lexer.c:1182
msgid "String expected following `+'."
msgstr ""
-#: src/language/lexer/lexer.c:1186
+#: src/language/lexer/lexer.c:1195
#, c-format
msgid "String exceeds 255 characters in length (%d characters)."
msgstr ""
@@ -3409,6 +3409,24 @@
msgid "Closing `%s': %s."
msgstr ""
+#: src/language/tests/check-model.q:139
+msgid "PATH and SEARCH subcommands are mutually exclusive. Ignoring PATH."
+msgstr ""
+
+#: src/language/tests/check-model.q:157
+msgid "At least one value must be specified on PATH."
+msgstr ""
+
+#: src/language/tests/check-model.q:168
+#, c-format
+msgid "Hash bits adjusted to %d."
+msgstr ""
+
+#: src/language/tests/check-model.q:209
+#, c-format
+msgid "error opening \"%s\" for writing"
+msgstr ""
+
#: src/language/tests/float-format.c:126
#, c-format
msgid "%d-byte string needed but %d-byte string supplied."
@@ -3608,6 +3626,15 @@
msgid "Document entered %s by %s:"
msgstr ""
+#: src/language/utilities/title.c:184
+#, c-format
+msgid "(Entered %s)"
+msgstr ""
+
+#: src/language/utilities/title.c:195
+msgid "Document lines may not be more than 80 bytes long"
+msgstr ""
+
#: src/language/xforms/compute.c:147 src/language/xforms/compute.c:195
#, c-format
msgid ""
Index: src/data/sys-file-writer.c
===================================================================
RCS file: /sources/pspp/pspp/src/data/sys-file-writer.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -b -r1.22 -r1.23
--- src/data/sys-file-writer.c 12 Feb 2007 02:10:55 -0000 1.22
+++ src/data/sys-file-writer.c 3 May 2007 10:15:26 -0000 1.23
@@ -662,16 +662,15 @@
int32_t n_lines ; /* Number of lines of documents. */
} ATTRIBUTE((packed)) rec_6;
- const char *documents;
- size_t n_lines;
+ const char * documents = dict_get_documents (d);
+ size_t doc_bytes = strlen (documents);
- documents = dict_get_documents (d);
- n_lines = strlen (documents) / 80;
+ assert (doc_bytes % 80 == 0);
rec_6.rec_type = 6;
- rec_6.n_lines = n_lines;
+ rec_6.n_lines = doc_bytes / 80;
buf_write (w, &rec_6, sizeof rec_6);
- buf_write (w, documents, 80 * n_lines);
+ buf_write (w, documents, 80 * rec_6.n_lines);
}
/* Write the alignment, width and scale values */
Index: src/language/command.def
===================================================================
RCS file: /sources/pspp/pspp/src/language/command.def,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- src/language/command.def 22 Dec 2006 04:38:22 -0000 1.14
+++ src/language/command.def 3 May 2007 10:15:26 -0000 1.15
@@ -48,6 +48,7 @@
/* Transformations and utilities that may appear after active
file definition or within INPUT PROGRAM. */
DEF_CMD (S_DATA | S_INPUT_PROGRAM, 0, "ADD VALUE LABELS", cmd_add_value_labels)
+DEF_CMD (S_DATA | S_INPUT_PROGRAM, 0, "ADD DOCUMENT", cmd_add_documents)
DEF_CMD (S_DATA | S_INPUT_PROGRAM, 0, "APPLY DICTIONARY", cmd_apply_dictionary)
DEF_CMD (S_DATA | S_INPUT_PROGRAM, 0, "BREAK", cmd_break)
DEF_CMD (S_DATA | S_INPUT_PROGRAM, 0, "COMPUTE", cmd_compute)
Index: src/language/lexer/ChangeLog
===================================================================
RCS file: /sources/pspp/pspp/src/language/lexer/ChangeLog,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -b -r1.24 -r1.25
--- src/language/lexer/ChangeLog 16 Apr 2007 03:59:32 -0000 1.24
+++ src/language/lexer/ChangeLog 3 May 2007 10:15:26 -0000 1.25
@@ -1,3 +1,7 @@
+2007-05-03 John Darrington <address@hidden>
+
+ * lexer.c lexer.h: Added lex_is_string function.
+
2007-04-15 Ben Pfaff <address@hidden>
* q2c.c: Fully support lists of integer values. Add support for
Index: src/language/lexer/lexer.c
===================================================================
RCS file: /sources/pspp/pspp/src/language/lexer/lexer.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- src/language/lexer/lexer.c 9 Feb 2007 05:19:08 -0000 1.19
+++ src/language/lexer/lexer.c 3 May 2007 10:15:26 -0000 1.20
@@ -478,6 +478,15 @@
return lexer->token == T_POS_NUM || lexer->token == T_NEG_NUM;
}
+
+/* Returns true if the current token is a string. */
+bool
+lex_is_string (struct lexer *lexer)
+{
+ return lexer->token == T_STRING;
+}
+
+
/* Returns the value of the current token, which must be a
floating point number. */
double
Index: src/language/lexer/lexer.h
===================================================================
RCS file: /sources/pspp/pspp/src/language/lexer/lexer.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- src/language/lexer/lexer.h 15 Dec 2006 00:16:02 -0000 1.11
+++ src/language/lexer/lexer.h 3 May 2007 10:15:26 -0000 1.12
@@ -47,6 +47,8 @@
double lex_number (struct lexer *);
bool lex_is_integer (struct lexer *);
long lex_integer (struct lexer *);
+bool lex_is_string (struct lexer *);
+
/* Token matching functions. */
bool lex_match (struct lexer *, int);
Index: src/language/utilities/ChangeLog
===================================================================
RCS file: /sources/pspp/pspp/src/language/utilities/ChangeLog,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- src/language/utilities/ChangeLog 22 Nov 2006 04:24:03 -0000 1.7
+++ src/language/utilities/ChangeLog 3 May 2007 10:15:26 -0000 1.8
@@ -1,3 +1,7 @@
+2007-05-03 John Darrington <address@hidden>
+
+ * title.c: Implemented ADD DOCUMENT command.
+
Sun Nov 19 09:21:39 2006 Ben Pfaff <address@hidden>
* set.q: Add RIB, RRB settings to control binary formats used by
Index: src/language/utilities/title.c
===================================================================
RCS file: /sources/pspp/pspp/src/language/utilities/title.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- src/language/utilities/title.c 15 Dec 2006 00:16:03 -0000 1.9
+++ src/language/utilities/title.c 3 May 2007 10:15:26 -0000 1.10
@@ -1,5 +1,5 @@
/* PSPP - computes sample statistics.
- Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1997-9, 2000, 2007 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
@@ -174,3 +174,55 @@
return lex_end_of_command (lexer);
}
+
+
+/* Performs the ADD DOCUMENTS command. */
+int
+cmd_add_documents (struct lexer *lexer, struct dataset *ds)
+{
+ int i;
+ int n_lines = 0;
+ char buf[256];
+ struct string *lines = NULL;
+
+ sprintf (buf, _("(Entered %s)"), get_start_date ());
+
+ if ( ! lex_force_string (lexer) )
+ return CMD_FAILURE;
+
+ while ( lex_is_string (lexer))
+ {
+ const struct string *s = lex_tokstr (lexer);
+ if ( ds_length (s) > 80)
+ {
+ /* Note to translators: "bytes" is correct, not characters */
+ msg (SE, _("Document lines may not be more than 80 bytes long."));
+ goto failure;
+
+ }
+ lines = xrealloc (lines, (n_lines + 1) * sizeof (*lines));
+ ds_init_string (&lines[n_lines++], s);
+
+ lex_get (lexer);
+ }
+
+ for ( i = 0 ; i < n_lines ; ++i)
+ {
+ add_document_line (dataset_dict (ds), ds_cstr (&lines[i]), 0);
+ ds_destroy (&lines[i]);
+ }
+
+ free (lines);
+
+ add_document_line (dataset_dict (ds), buf, 3);
+
+ return lex_end_of_command (lexer) ;
+
+ failure:
+ for ( i = 0 ; i < n_lines ; ++i)
+ ds_destroy (&lines[i]);
+
+ free (lines);
+
+ return CMD_FAILURE;
+}
Index: tests/command/file-label.sh
===================================================================
RCS file: /sources/pspp/pspp/tests/command/file-label.sh,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- tests/command/file-label.sh 8 Oct 2006 16:54:46 -0000 1.15
+++ tests/command/file-label.sh 3 May 2007 10:15:27 -0000 1.16
@@ -1,6 +1,6 @@
#!/bin/sh
-# This program tests the FILE LABEL and DOCUMENT commands
+# This program tests the FILE LABEL and DOCUMENT, and ADD DOCUMENT commands
TEMPDIR=/tmp/pspp-tst-$$
TESTFILE=$TEMPDIR/`basename $0`.sps
@@ -77,10 +77,13 @@
This is the second very long line of a document in an attempt to overflow the
input buffer with a really long line
Note that the last line should end with a period: .
+
/* Display the documents.
display documents.
display file label.
+ADD DOCUMENT 'Line one' 'Line two'.
+
/* Save the active file then get it and display the documents again.
save /OUTFILE='foo.save'.
get /FILE='foo.save'.
@@ -117,7 +120,7 @@
# We need to filter out the dates/times
activity="date filter"
-grep -v 'Document entered' $TEMPDIR/pspp.list > $TEMPDIR/pspp.filtered
+grep -v '[Ee]ntered' $TEMPDIR/pspp.list > $TEMPDIR/pspp.filtered
if [ $? -ne 0 ] ; then no_result ; fi
@@ -141,17 +144,23 @@
First line of a document
This is the second very long line of a document in an attempt to overflow
the
Note that the last line should end with a period: .
+Line one
+Line two
File label:
This is a test file label
Documents in the active file:
First line of a document
This is the second very long line of a document in an attempt to overflow
the
Note that the last line should end with a period: .
+Line one
+Line two
There should be another document now.
Documents in the active file:
First line of a document
This is the second very long line of a document in an attempt to overflow
the
Note that the last line should end with a period: .
+Line one
+Line two
There should be another document now.
File label:
This is a test file label
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Pspp-cvs] pspp doc/utilities.texi po/de.po po/pspp.pot sr...,
John Darrington <=