From 9491a8bd354152d3a228e1bf041c7ad6228750d7 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Wed, 24 Jan 2007 08:30:22 +0000 Subject: [PATCH] Enables Data Open/Save/New menuitems. --- po/de.po | 319 +++++++++++++----------- po/pspp.pot | 312 +++++++++++++----------- src/language/ChangeLog | 5 + src/language/command.c | 18 +- src/language/command.h | 11 +- src/language/data-io/inpt-pgm.c | 2 +- src/language/syntax-string-source.c | 8 + src/language/syntax-string-source.h | 7 +- src/ui/gui/ChangeLog | 13 + src/ui/gui/data-editor.c | 363 ++++++++++++++++++++++------ src/ui/gui/data-editor.glade | 14 +- src/ui/gui/data-editor.h | 12 +- src/ui/gui/helper.c | 27 ++- src/ui/gui/helper.h | 2 +- src/ui/gui/syntax-editor.c | 6 - src/ui/gui/syntax-editor.glade | 2 + src/ui/gui/window-manager.c | 5 + src/ui/gui/window-manager.h | 2 + src/ui/terminal/main.c | 5 +- 19 files changed, 741 insertions(+), 392 deletions(-) diff --git a/po/de.po b/po/de.po index ecf83cb4..87ad18be 100644 --- a/po/de.po +++ b/po/de.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: PSPP 0.4.2\n" "Report-Msgid-Bugs-To: pspp-dev@gnu.org\n" -"POT-Creation-Date: 2007-01-20 08:53+0900\n" +"POT-Creation-Date: 2007-01-23 21:08+0900\n" "PO-Revision-Date: 2006-05-26 17:49+0800\n" "Last-Translator: John Darrington \n" "Language-Team: German \n" @@ -309,13 +309,13 @@ msgid "%s variables are not compatible with %s format %s." msgstr "" #: src/data/format.c:310 src/data/por-file-reader.c:489 -#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:1086 +#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:1084 #: src/ui/gui/psppire-var-store.c:482 msgid "String" msgstr "Zeichenkette" #: src/data/format.c:310 src/data/por-file-reader.c:489 -#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:982 +#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:980 #: src/ui/gui/psppire-var-store.c:475 msgid "Numeric" msgstr "Nummer" @@ -824,98 +824,98 @@ msgstr "" msgid "scratch" msgstr "" -#: src/language/command.c:182 +#: src/language/command.c:194 #, c-format msgid "%s is unimplemented." msgstr "" -#: src/language/command.c:187 +#: src/language/command.c:199 #, c-format msgid "%s may be used only in testing mode." msgstr "" -#: src/language/command.c:192 +#: src/language/command.c:204 #, c-format msgid "%s may be used only in enhanced syntax mode." msgstr "" -#: src/language/command.c:446 +#: src/language/command.c:458 msgid "expecting command name" msgstr "" -#: src/language/command.c:460 +#: src/language/command.c:472 #, c-format msgid "Unknown command %s." msgstr "" -#: src/language/command.c:587 +#: src/language/command.c:599 msgid "before the active file has been defined" msgstr "" -#: src/language/command.c:589 +#: src/language/command.c:601 msgid "after the active file has been defined" msgstr "" -#: src/language/command.c:591 +#: src/language/command.c:603 msgid "inside INPUT PROGRAM" msgstr "" -#: src/language/command.c:593 +#: src/language/command.c:605 msgid "inside FILE TYPE" msgstr "" -#: src/language/command.c:598 +#: src/language/command.c:610 #, c-format msgid "%s or %s" msgstr "" -#: src/language/command.c:600 +#: src/language/command.c:612 #, c-format msgid "%s, %s, or %s" msgstr "" -#: src/language/command.c:604 +#: src/language/command.c:616 #, c-format msgid "%s is allowed only %s." msgstr "" -#: src/language/command.c:609 +#: src/language/command.c:621 #, c-format msgid "%s is not allowed inside INPUT PROGRAM." msgstr "" -#: src/language/command.c:611 +#: src/language/command.c:623 #, c-format msgid "%s is not allowed inside FILE TYPE." msgstr "" -#: src/language/command.c:689 src/language/command.c:818 +#: src/language/command.c:701 src/language/command.c:830 #: src/language/utilities/permissions.c:101 msgid "This command not allowed when the SAFER option is set." msgstr "" -#: src/language/command.c:701 +#: src/language/command.c:713 #, c-format msgid "Error removing `%s': %s." msgstr "" -#: src/language/command.c:751 +#: src/language/command.c:763 #, c-format msgid "Couldn't fork: %s." msgstr "" -#: src/language/command.c:793 +#: src/language/command.c:805 #, c-format msgid "Error executing command: %s." msgstr "" -#: src/language/command.c:802 src/language/data-io/print-space.c:75 +#: src/language/command.c:814 src/language/data-io/print-space.c:75 #: src/language/dictionary/vector.c:202 src/language/lexer/lexer.c:465 #: src/language/stats/autorecode.c:153 src/language/xforms/select-if.c:61 msgid "expecting end of command" msgstr "" -#: src/language/command.c:839 +#: src/language/command.c:851 msgid "No operating system support for this command." msgstr "" @@ -4102,375 +4102,409 @@ msgstr "" msgid "Style of bevel around the custom entry button" msgstr "" -#: src/ui/gui/data-editor.c:154 +#: src/ui/gui/data-editor.c:158 #, fuzzy msgid "Weights" msgstr "Rechts" -#: src/ui/gui/data-editor.c:155 +#: src/ui/gui/data-editor.c:159 msgid "Weight cases by variable" msgstr "" -#: src/ui/gui/data-editor.c:423 src/ui/gui/data-editor.glade:428 -msgid "Open" -msgstr "Öffen" - -#: src/ui/gui/data-editor.c:431 -msgid "System Files (*.sav)" -msgstr "Systemedatein (*.sav)" - -#: src/ui/gui/data-editor.c:437 -msgid "Portable Files (*.por) " -msgstr "Tragbardatein (*.por)" - -#: src/ui/gui/data-editor.c:443 src/ui/gui/syntax-editor.c:141 -#: src/ui/gui/syntax-editor.c:531 -msgid "All Files" -msgstr "Alle Datei" - -#: src/ui/gui/data-editor.c:519 +#: src/ui/gui/data-editor.c:479 msgid "Font Selection" msgstr "Schriftwahlung" -#: src/ui/gui/data-editor.c:697 +#: src/ui/gui/data-editor.c:657 msgid "No Split" msgstr "" -#: src/ui/gui/data-editor.c:705 +#: src/ui/gui/data-editor.c:665 #, fuzzy msgid "Split by " msgstr "Alle Datei" -#: src/ui/gui/data-editor.c:730 +#: src/ui/gui/data-editor.c:690 msgid "Filter off" msgstr "" -#: src/ui/gui/data-editor.c:743 +#: src/ui/gui/data-editor.c:703 #, c-format msgid "Filter by %s" msgstr "" -#: src/ui/gui/data-editor.c:761 +#: src/ui/gui/data-editor.c:721 msgid "Weights off" msgstr "" -#: src/ui/gui/data-editor.c:774 +#: src/ui/gui/data-editor.c:734 #, c-format msgid "Weight by %s" msgstr "" +#: src/ui/gui/data-editor.c:841 src/ui/gui/data-editor.c:1039 +#: src/ui/gui/data-editor.glade:426 +msgid "Open" +msgstr "Öffen" + +#: src/ui/gui/data-editor.c:842 +msgid "Open a data file" +msgstr "" + +#: src/ui/gui/data-editor.c:850 src/ui/gui/data-editor.c:951 +#: src/ui/gui/data-editor.glade:437 +msgid "Save" +msgstr "Speichen" + +#: src/ui/gui/data-editor.c:851 src/ui/gui/data-editor.c:861 +#, fuzzy +msgid "Save data to file" +msgstr "Speichern unter" + +#: src/ui/gui/data-editor.c:860 +#, fuzzy +msgid "Save As" +msgstr "Speichern unter" + +#: src/ui/gui/data-editor.c:869 +msgid "New" +msgstr "" + +#: src/ui/gui/data-editor.c:870 +msgid "New data file" +msgstr "" + +#: src/ui/gui/data-editor.c:959 src/ui/gui/data-editor.c:1047 +msgid "System Files (*.sav)" +msgstr "Systemedatein (*.sav)" + +#: src/ui/gui/data-editor.c:965 src/ui/gui/data-editor.c:1053 +msgid "Portable Files (*.por) " +msgstr "Tragbardatein (*.por)" + +#: src/ui/gui/data-editor.c:971 src/ui/gui/data-editor.c:1059 +#: src/ui/gui/syntax-editor.c:141 src/ui/gui/syntax-editor.c:525 +msgid "All Files" +msgstr "Alle Datei" + +#: src/ui/gui/data-editor.c:979 +#, fuzzy +msgid "System File" +msgstr "Systemedatein (*.sav)" + +#: src/ui/gui/data-editor.c:984 +#, fuzzy +msgid "Portable File" +msgstr "Tragbardatein (*.por)" + #: src/ui/gui/data-editor.glade:18 src/ui/gui/syntax-editor.glade:39 msgid "_File" msgstr "_Datei" #: src/ui/gui/data-editor.glade:33 src/ui/gui/data-editor.glade:59 -#: src/ui/gui/syntax-editor.glade:57 src/ui/gui/syntax-editor.glade:86 +#: src/ui/gui/syntax-editor.glade:57 src/ui/gui/syntax-editor.glade:87 msgid "_Syntax" msgstr "" #: src/ui/gui/data-editor.glade:40 src/ui/gui/data-editor.glade:66 -#: src/ui/gui/data-editor.glade:253 src/ui/gui/syntax-editor.glade:65 -#: src/ui/gui/syntax-editor.glade:95 +#: src/ui/gui/data-editor.glade:251 src/ui/gui/syntax-editor.glade:66 +#: src/ui/gui/syntax-editor.glade:97 #, fuzzy msgid "_Data" msgstr "Daten" -#: src/ui/gui/data-editor.glade:115 src/ui/gui/syntax-editor.glade:142 +#: src/ui/gui/data-editor.glade:113 src/ui/gui/syntax-editor.glade:144 msgid "_Edit" msgstr "_Bearbeiten" -#: src/ui/gui/data-editor.glade:150 +#: src/ui/gui/data-editor.glade:148 #, fuzzy msgid "Paste _Variables" msgstr "Variableansicht" -#: src/ui/gui/data-editor.glade:158 +#: src/ui/gui/data-editor.glade:156 msgid "Cl_ear" msgstr "" -#: src/ui/gui/data-editor.glade:171 +#: src/ui/gui/data-editor.glade:169 #, fuzzy msgid "_Find" msgstr "_Datei" -#: src/ui/gui/data-editor.glade:182 +#: src/ui/gui/data-editor.glade:180 msgid "_View" msgstr "_Ansicht" -#: src/ui/gui/data-editor.glade:189 +#: src/ui/gui/data-editor.glade:187 msgid "Status Bar" msgstr "Statusleiste" -#: src/ui/gui/data-editor.glade:196 +#: src/ui/gui/data-editor.glade:194 msgid "Toolbars" msgstr "Werkzeugregal" -#: src/ui/gui/data-editor.glade:208 +#: src/ui/gui/data-editor.glade:206 msgid "Fonts" msgstr "Schrift" -#: src/ui/gui/data-editor.glade:215 +#: src/ui/gui/data-editor.glade:213 msgid "Grid Lines" msgstr "Glitten" -#: src/ui/gui/data-editor.glade:223 src/ui/gui/data-editor.glade:633 -#: src/ui/gui/data-editor.glade:1345 src/ui/gui/data-editor.glade:1523 +#: src/ui/gui/data-editor.glade:221 src/ui/gui/data-editor.glade:631 +#: src/ui/gui/data-editor.glade:1343 src/ui/gui/data-editor.glade:1521 msgid "Value Labels" msgstr "Werten" -#: src/ui/gui/data-editor.glade:235 +#: src/ui/gui/data-editor.glade:233 msgid "Data" msgstr "Daten" -#: src/ui/gui/data-editor.glade:242 src/ui/gui/data-editor.glade:514 +#: src/ui/gui/data-editor.glade:240 src/ui/gui/data-editor.glade:512 msgid "Variables" msgstr "Variableansicht" -#: src/ui/gui/data-editor.glade:261 src/ui/gui/data-editor.glade:568 +#: src/ui/gui/data-editor.glade:259 src/ui/gui/data-editor.glade:566 #, fuzzy msgid "Insert Variable" msgstr "Variableansicht" -#: src/ui/gui/data-editor.glade:270 +#: src/ui/gui/data-editor.glade:268 #, fuzzy msgid "Insert Cases" msgstr "_Stecken" -#: src/ui/gui/data-editor.glade:279 src/ui/gui/data-editor.glade:502 -#: src/ui/gui/data-editor.glade:1893 +#: src/ui/gui/data-editor.glade:277 src/ui/gui/data-editor.glade:500 +#: src/ui/gui/data-editor.glade:1891 msgid "Go To Case" msgstr "" -#: src/ui/gui/data-editor.glade:294 src/ui/gui/data-editor.glade:1958 +#: src/ui/gui/data-editor.glade:292 src/ui/gui/data-editor.glade:1956 msgid "Sort Cases" msgstr "" -#: src/ui/gui/data-editor.glade:303 +#: src/ui/gui/data-editor.glade:301 msgid "Transpose" msgstr "" -#: src/ui/gui/data-editor.glade:311 +#: src/ui/gui/data-editor.glade:309 msgid "Restructure" msgstr "" -#: src/ui/gui/data-editor.glade:319 +#: src/ui/gui/data-editor.glade:317 #, fuzzy msgid "Merge Files" msgstr "Alle Datei" -#: src/ui/gui/data-editor.glade:327 +#: src/ui/gui/data-editor.glade:325 msgid "Aggregate" msgstr "" -#: src/ui/gui/data-editor.glade:341 src/ui/gui/data-editor.glade:589 +#: src/ui/gui/data-editor.glade:339 src/ui/gui/data-editor.glade:587 #, fuzzy msgid "Split File" msgstr "Alle Datei" -#: src/ui/gui/data-editor.glade:349 src/ui/gui/data-editor.glade:613 +#: src/ui/gui/data-editor.glade:347 src/ui/gui/data-editor.glade:611 msgid "Select Cases" msgstr "" -#: src/ui/gui/data-editor.glade:357 src/ui/gui/data-editor.glade:601 +#: src/ui/gui/data-editor.glade:355 src/ui/gui/data-editor.glade:599 msgid "Weight Cases" msgstr "" -#: src/ui/gui/data-editor.glade:368 src/ui/gui/syntax-editor.glade:232 +#: src/ui/gui/data-editor.glade:366 src/ui/gui/syntax-editor.glade:234 #, fuzzy msgid "_Windows" msgstr "_Datei" -#: src/ui/gui/data-editor.glade:376 src/ui/gui/syntax-editor.glade:242 +#: src/ui/gui/data-editor.glade:374 src/ui/gui/syntax-editor.glade:244 msgid "_Minimise All Windows" msgstr "" -#: src/ui/gui/data-editor.glade:388 src/ui/gui/syntax-editor.glade:254 +#: src/ui/gui/data-editor.glade:386 src/ui/gui/syntax-editor.glade:256 msgid "_Help" msgstr "_Hilfe" -#: src/ui/gui/data-editor.glade:395 src/ui/gui/syntax-editor.glade:263 +#: src/ui/gui/data-editor.glade:393 src/ui/gui/syntax-editor.glade:265 msgid "_Reference Manual" msgstr "" -#: src/ui/gui/data-editor.glade:402 src/ui/gui/syntax-editor.glade:271 +#: src/ui/gui/data-editor.glade:400 src/ui/gui/syntax-editor.glade:273 msgid "_About" msgstr "_Info" -#: src/ui/gui/data-editor.glade:439 -msgid "Save" -msgstr "Speichen" - -#: src/ui/gui/data-editor.glade:451 +#: src/ui/gui/data-editor.glade:449 msgid "Print" msgstr "Drucken" -#: src/ui/gui/data-editor.glade:471 +#: src/ui/gui/data-editor.glade:469 msgid "Undo" msgstr "" -#: src/ui/gui/data-editor.glade:482 +#: src/ui/gui/data-editor.glade:480 msgid "Redo" msgstr "" -#: src/ui/gui/data-editor.glade:535 +#: src/ui/gui/data-editor.glade:533 msgid "Find" msgstr "" -#: src/ui/gui/data-editor.glade:555 +#: src/ui/gui/data-editor.glade:553 #, fuzzy msgid "Insert Case" msgstr "_Stecken" -#: src/ui/gui/data-editor.glade:646 +#: src/ui/gui/data-editor.glade:644 msgid "Use Sets" msgstr "" -#: src/ui/gui/data-editor.glade:728 +#: src/ui/gui/data-editor.glade:726 msgid "Data View" msgstr "Datenansicht" -#: src/ui/gui/data-editor.glade:755 +#: src/ui/gui/data-editor.glade:753 msgid "Variable View" msgstr "Variableansicht" -#: src/ui/gui/data-editor.glade:785 +#: src/ui/gui/data-editor.glade:783 msgid "Information Area" msgstr "" -#: src/ui/gui/data-editor.glade:804 +#: src/ui/gui/data-editor.glade:802 msgid "Processor Area" msgstr "" -#: src/ui/gui/data-editor.glade:829 +#: src/ui/gui/data-editor.glade:827 msgid "OMS Area" msgstr "" -#: src/ui/gui/data-editor.glade:854 +#: src/ui/gui/data-editor.glade:852 msgid "Case Counter Area" msgstr "" -#: src/ui/gui/data-editor.glade:879 +#: src/ui/gui/data-editor.glade:877 msgid "Filter Use Status Area" msgstr "" -#: src/ui/gui/data-editor.glade:905 +#: src/ui/gui/data-editor.glade:903 msgid "Weight Status Area" msgstr "" -#: src/ui/gui/data-editor.glade:931 +#: src/ui/gui/data-editor.glade:929 #, fuzzy msgid "Split File Status Area" msgstr "Alle Datei" -#: src/ui/gui/data-editor.glade:961 +#: src/ui/gui/data-editor.glade:959 msgid "Variable Type" msgstr "Variableansicht" -#: src/ui/gui/data-editor.glade:996 src/ui/gui/psppire-var-store.c:476 +#: src/ui/gui/data-editor.glade:994 src/ui/gui/psppire-var-store.c:476 msgid "Comma" msgstr "Komma" -#: src/ui/gui/data-editor.glade:1011 src/ui/gui/psppire-var-store.c:477 +#: src/ui/gui/data-editor.glade:1009 src/ui/gui/psppire-var-store.c:477 msgid "Dot" msgstr "Punkt" -#: src/ui/gui/data-editor.glade:1026 +#: src/ui/gui/data-editor.glade:1024 msgid "Scientific notation" msgstr "Wissenschaftlichnotation" -#: src/ui/gui/data-editor.glade:1041 src/ui/gui/psppire-var-store.c:479 +#: src/ui/gui/data-editor.glade:1039 src/ui/gui/psppire-var-store.c:479 msgid "Date" msgstr "Datum" -#: src/ui/gui/data-editor.glade:1056 src/ui/gui/psppire-var-store.c:480 +#: src/ui/gui/data-editor.glade:1054 src/ui/gui/psppire-var-store.c:480 msgid "Dollar" msgstr "Euro" -#: src/ui/gui/data-editor.glade:1071 +#: src/ui/gui/data-editor.glade:1069 msgid "Custom currency" msgstr "Spezialwährung" -#: src/ui/gui/data-editor.glade:1163 +#: src/ui/gui/data-editor.glade:1161 msgid "positive" msgstr "positiv" -#: src/ui/gui/data-editor.glade:1169 +#: src/ui/gui/data-editor.glade:1167 msgid "negative" msgstr "negativ" -#: src/ui/gui/data-editor.glade:1182 +#: src/ui/gui/data-editor.glade:1180 msgid "Sample" msgstr "Muster" -#: src/ui/gui/data-editor.glade:1232 +#: src/ui/gui/data-editor.glade:1230 msgid "Width:" msgstr "Große:" -#: src/ui/gui/data-editor.glade:1276 +#: src/ui/gui/data-editor.glade:1274 msgid "Decimal Places:" msgstr "Dezimalstellen:" -#: src/ui/gui/data-editor.glade:1443 +#: src/ui/gui/data-editor.glade:1441 msgid "Value Label:" msgstr "Kennsatz:" -#: src/ui/gui/data-editor.glade:1456 +#: src/ui/gui/data-editor.glade:1454 msgid "Value:" msgstr "Werte:" -#: src/ui/gui/data-editor.glade:1589 +#: src/ui/gui/data-editor.glade:1587 msgid "Missing Values" msgstr "Lösewerten" -#: src/ui/gui/data-editor.glade:1607 +#: src/ui/gui/data-editor.glade:1605 msgid "_Range plus one optional discrete missing value" msgstr "Wertebereich und ein optional Lösewert" -#: src/ui/gui/data-editor.glade:1631 +#: src/ui/gui/data-editor.glade:1629 msgid "_Low:" msgstr "_Tief:" -#: src/ui/gui/data-editor.glade:1660 +#: src/ui/gui/data-editor.glade:1658 msgid "_High:" msgstr "_Hoch:" -#: src/ui/gui/data-editor.glade:1701 +#: src/ui/gui/data-editor.glade:1699 msgid "Di_screte value:" msgstr "Di_skretwerte" -#: src/ui/gui/data-editor.glade:1748 +#: src/ui/gui/data-editor.glade:1746 msgid "_No missing values" msgstr "_Kein Lösewerten" -#: src/ui/gui/data-editor.glade:1765 +#: src/ui/gui/data-editor.glade:1763 msgid "_Discrete missing values" msgstr "_Diskret Lösewerten" -#: src/ui/gui/data-editor.glade:1910 +#: src/ui/gui/data-editor.glade:1908 msgid "Case Number:" msgstr "" -#: src/ui/gui/data-editor.glade:2019 +#: src/ui/gui/data-editor.glade:2017 msgid "Sort by:" msgstr "" -#: src/ui/gui/data-editor.glade:2068 src/ui/gui/sort-cases-dialog.c:279 +#: src/ui/gui/data-editor.glade:2066 src/ui/gui/sort-cases-dialog.c:279 msgid "Ascending" msgstr "" -#: src/ui/gui/data-editor.glade:2081 src/ui/gui/sort-cases-dialog.c:281 +#: src/ui/gui/data-editor.glade:2079 src/ui/gui/sort-cases-dialog.c:281 msgid "Descending" msgstr "" -#: src/ui/gui/data-editor.glade:2097 +#: src/ui/gui/data-editor.glade:2095 msgid "Sort Order" msgstr "" -#: src/ui/gui/helper.c:113 +#: src/ui/gui/helper.c:115 msgid "Sorry. The help system hasn't yet been implemented." msgstr "Es gibt noch nicht kein Helpsysteme. Schade!" -#: src/ui/gui/helper.c:136 +#: src/ui/gui/helper.c:138 #, c-format msgid "Cannot open reference manual: %s" msgstr "" @@ -4597,12 +4631,12 @@ msgstr "" msgid "Save Syntax" msgstr "Speichern unter" -#: src/ui/gui/syntax-editor.c:135 src/ui/gui/syntax-editor.c:525 +#: src/ui/gui/syntax-editor.c:135 src/ui/gui/syntax-editor.c:519 #, fuzzy msgid "Syntax Files (*.sps) " msgstr "Systemedatein (*.sav)" -#: src/ui/gui/syntax-editor.c:517 +#: src/ui/gui/syntax-editor.c:511 msgid "Open Syntax" msgstr "" @@ -4610,24 +4644,24 @@ msgstr "" msgid "Psppire Syntax Editor" msgstr "" -#: src/ui/gui/syntax-editor.glade:187 +#: src/ui/gui/syntax-editor.glade:189 msgid "_Run" msgstr "" -#: src/ui/gui/syntax-editor.glade:196 +#: src/ui/gui/syntax-editor.glade:198 msgid "All" msgstr "" -#: src/ui/gui/syntax-editor.glade:204 +#: src/ui/gui/syntax-editor.glade:206 #, fuzzy msgid "Selection" msgstr "Schriftwahlung" -#: src/ui/gui/syntax-editor.glade:212 +#: src/ui/gui/syntax-editor.glade:214 msgid "Current Line" msgstr "" -#: src/ui/gui/syntax-editor.glade:220 +#: src/ui/gui/syntax-editor.glade:222 msgid "To End" msgstr "" @@ -4679,22 +4713,22 @@ msgstr "Ordinalwert" msgid "Scale" msgstr "Skalwert" -#: src/ui/gui/window-manager.c:131 +#: src/ui/gui/window-manager.c:136 #, fuzzy, c-format msgid "Syntax%d" msgstr "Speichern unter" -#: src/ui/gui/window-manager.c:132 src/ui/gui/window-manager.c:160 +#: src/ui/gui/window-manager.c:137 src/ui/gui/window-manager.c:165 #, fuzzy, c-format msgid "%s --- PSPP Syntax Editor" msgstr "PSPP Dateiaufbereiter" -#: src/ui/gui/window-manager.c:135 +#: src/ui/gui/window-manager.c:140 #, fuzzy, c-format msgid "Untitled%d" msgstr "Unbetitelt" -#: src/ui/gui/window-manager.c:136 src/ui/gui/window-manager.c:163 +#: src/ui/gui/window-manager.c:141 src/ui/gui/window-manager.c:168 #, fuzzy, c-format msgid "%s --- PSPP Data Editor" msgstr "PSPP Dateiaufbereiter" @@ -4752,7 +4786,7 @@ msgid "" "Report bugs to <%s>.\n" msgstr "" -#: src/ui/terminal/main.c:129 +#: src/ui/terminal/main.c:128 msgid "" "Stopping syntax file processing here to avoid a cascade of dependent command " "failures." @@ -4791,8 +4825,5 @@ msgstr "Warnung" #~ msgid "PSPP Data Editor" #~ msgstr "PSPP Dateiaufbereiter" -#~ msgid "Save Data As" -#~ msgstr "Speichern unter" - #~ msgid "_Insert" #~ msgstr "_Stecken" diff --git a/po/pspp.pot b/po/pspp.pot index 16c50d2f..52747638 100644 --- a/po/pspp.pot +++ b/po/pspp.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: pspp-dev@gnu.org\n" -"POT-Creation-Date: 2007-01-20 08:53+0900\n" +"POT-Creation-Date: 2007-01-23 21:08+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -308,13 +308,13 @@ msgid "%s variables are not compatible with %s format %s." msgstr "" #: src/data/format.c:310 src/data/por-file-reader.c:489 -#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:1086 +#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:1084 #: src/ui/gui/psppire-var-store.c:482 msgid "String" msgstr "" #: src/data/format.c:310 src/data/por-file-reader.c:489 -#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:982 +#: src/data/sys-file-reader.c:602 src/ui/gui/data-editor.glade:980 #: src/ui/gui/psppire-var-store.c:475 msgid "Numeric" msgstr "" @@ -819,98 +819,98 @@ msgstr "" msgid "scratch" msgstr "" -#: src/language/command.c:182 +#: src/language/command.c:194 #, c-format msgid "%s is unimplemented." msgstr "" -#: src/language/command.c:187 +#: src/language/command.c:199 #, c-format msgid "%s may be used only in testing mode." msgstr "" -#: src/language/command.c:192 +#: src/language/command.c:204 #, c-format msgid "%s may be used only in enhanced syntax mode." msgstr "" -#: src/language/command.c:446 +#: src/language/command.c:458 msgid "expecting command name" msgstr "" -#: src/language/command.c:460 +#: src/language/command.c:472 #, c-format msgid "Unknown command %s." msgstr "" -#: src/language/command.c:587 +#: src/language/command.c:599 msgid "before the active file has been defined" msgstr "" -#: src/language/command.c:589 +#: src/language/command.c:601 msgid "after the active file has been defined" msgstr "" -#: src/language/command.c:591 +#: src/language/command.c:603 msgid "inside INPUT PROGRAM" msgstr "" -#: src/language/command.c:593 +#: src/language/command.c:605 msgid "inside FILE TYPE" msgstr "" -#: src/language/command.c:598 +#: src/language/command.c:610 #, c-format msgid "%s or %s" msgstr "" -#: src/language/command.c:600 +#: src/language/command.c:612 #, c-format msgid "%s, %s, or %s" msgstr "" -#: src/language/command.c:604 +#: src/language/command.c:616 #, c-format msgid "%s is allowed only %s." msgstr "" -#: src/language/command.c:609 +#: src/language/command.c:621 #, c-format msgid "%s is not allowed inside INPUT PROGRAM." msgstr "" -#: src/language/command.c:611 +#: src/language/command.c:623 #, c-format msgid "%s is not allowed inside FILE TYPE." msgstr "" -#: src/language/command.c:689 src/language/command.c:818 +#: src/language/command.c:701 src/language/command.c:830 #: src/language/utilities/permissions.c:101 msgid "This command not allowed when the SAFER option is set." msgstr "" -#: src/language/command.c:701 +#: src/language/command.c:713 #, c-format msgid "Error removing `%s': %s." msgstr "" -#: src/language/command.c:751 +#: src/language/command.c:763 #, c-format msgid "Couldn't fork: %s." msgstr "" -#: src/language/command.c:793 +#: src/language/command.c:805 #, c-format msgid "Error executing command: %s." msgstr "" -#: src/language/command.c:802 src/language/data-io/print-space.c:75 +#: src/language/command.c:814 src/language/data-io/print-space.c:75 #: src/language/dictionary/vector.c:202 src/language/lexer/lexer.c:465 #: src/language/stats/autorecode.c:153 src/language/xforms/select-if.c:61 msgid "expecting end of command" msgstr "" -#: src/language/command.c:839 +#: src/language/command.c:851 msgid "No operating system support for this command." msgstr "" @@ -4097,363 +4097,393 @@ msgstr "" msgid "Style of bevel around the custom entry button" msgstr "" -#: src/ui/gui/data-editor.c:154 +#: src/ui/gui/data-editor.c:158 msgid "Weights" msgstr "" -#: src/ui/gui/data-editor.c:155 +#: src/ui/gui/data-editor.c:159 msgid "Weight cases by variable" msgstr "" -#: src/ui/gui/data-editor.c:423 src/ui/gui/data-editor.glade:428 -msgid "Open" -msgstr "" - -#: src/ui/gui/data-editor.c:431 -msgid "System Files (*.sav)" -msgstr "" - -#: src/ui/gui/data-editor.c:437 -msgid "Portable Files (*.por) " -msgstr "" - -#: src/ui/gui/data-editor.c:443 src/ui/gui/syntax-editor.c:141 -#: src/ui/gui/syntax-editor.c:531 -msgid "All Files" -msgstr "" - -#: src/ui/gui/data-editor.c:519 +#: src/ui/gui/data-editor.c:479 msgid "Font Selection" msgstr "" -#: src/ui/gui/data-editor.c:697 +#: src/ui/gui/data-editor.c:657 msgid "No Split" msgstr "" -#: src/ui/gui/data-editor.c:705 +#: src/ui/gui/data-editor.c:665 msgid "Split by " msgstr "" -#: src/ui/gui/data-editor.c:730 +#: src/ui/gui/data-editor.c:690 msgid "Filter off" msgstr "" -#: src/ui/gui/data-editor.c:743 +#: src/ui/gui/data-editor.c:703 #, c-format msgid "Filter by %s" msgstr "" -#: src/ui/gui/data-editor.c:761 +#: src/ui/gui/data-editor.c:721 msgid "Weights off" msgstr "" -#: src/ui/gui/data-editor.c:774 +#: src/ui/gui/data-editor.c:734 #, c-format msgid "Weight by %s" msgstr "" +#: src/ui/gui/data-editor.c:841 src/ui/gui/data-editor.c:1039 +#: src/ui/gui/data-editor.glade:426 +msgid "Open" +msgstr "" + +#: src/ui/gui/data-editor.c:842 +msgid "Open a data file" +msgstr "" + +#: src/ui/gui/data-editor.c:850 src/ui/gui/data-editor.c:951 +#: src/ui/gui/data-editor.glade:437 +msgid "Save" +msgstr "" + +#: src/ui/gui/data-editor.c:851 src/ui/gui/data-editor.c:861 +msgid "Save data to file" +msgstr "" + +#: src/ui/gui/data-editor.c:860 +msgid "Save As" +msgstr "" + +#: src/ui/gui/data-editor.c:869 +msgid "New" +msgstr "" + +#: src/ui/gui/data-editor.c:870 +msgid "New data file" +msgstr "" + +#: src/ui/gui/data-editor.c:959 src/ui/gui/data-editor.c:1047 +msgid "System Files (*.sav)" +msgstr "" + +#: src/ui/gui/data-editor.c:965 src/ui/gui/data-editor.c:1053 +msgid "Portable Files (*.por) " +msgstr "" + +#: src/ui/gui/data-editor.c:971 src/ui/gui/data-editor.c:1059 +#: src/ui/gui/syntax-editor.c:141 src/ui/gui/syntax-editor.c:525 +msgid "All Files" +msgstr "" + +#: src/ui/gui/data-editor.c:979 +msgid "System File" +msgstr "" + +#: src/ui/gui/data-editor.c:984 +msgid "Portable File" +msgstr "" + #: src/ui/gui/data-editor.glade:18 src/ui/gui/syntax-editor.glade:39 msgid "_File" msgstr "" #: src/ui/gui/data-editor.glade:33 src/ui/gui/data-editor.glade:59 -#: src/ui/gui/syntax-editor.glade:57 src/ui/gui/syntax-editor.glade:86 +#: src/ui/gui/syntax-editor.glade:57 src/ui/gui/syntax-editor.glade:87 msgid "_Syntax" msgstr "" #: src/ui/gui/data-editor.glade:40 src/ui/gui/data-editor.glade:66 -#: src/ui/gui/data-editor.glade:253 src/ui/gui/syntax-editor.glade:65 -#: src/ui/gui/syntax-editor.glade:95 +#: src/ui/gui/data-editor.glade:251 src/ui/gui/syntax-editor.glade:66 +#: src/ui/gui/syntax-editor.glade:97 msgid "_Data" msgstr "" -#: src/ui/gui/data-editor.glade:115 src/ui/gui/syntax-editor.glade:142 +#: src/ui/gui/data-editor.glade:113 src/ui/gui/syntax-editor.glade:144 msgid "_Edit" msgstr "" -#: src/ui/gui/data-editor.glade:150 +#: src/ui/gui/data-editor.glade:148 msgid "Paste _Variables" msgstr "" -#: src/ui/gui/data-editor.glade:158 +#: src/ui/gui/data-editor.glade:156 msgid "Cl_ear" msgstr "" -#: src/ui/gui/data-editor.glade:171 +#: src/ui/gui/data-editor.glade:169 msgid "_Find" msgstr "" -#: src/ui/gui/data-editor.glade:182 +#: src/ui/gui/data-editor.glade:180 msgid "_View" msgstr "" -#: src/ui/gui/data-editor.glade:189 +#: src/ui/gui/data-editor.glade:187 msgid "Status Bar" msgstr "" -#: src/ui/gui/data-editor.glade:196 +#: src/ui/gui/data-editor.glade:194 msgid "Toolbars" msgstr "" -#: src/ui/gui/data-editor.glade:208 +#: src/ui/gui/data-editor.glade:206 msgid "Fonts" msgstr "" -#: src/ui/gui/data-editor.glade:215 +#: src/ui/gui/data-editor.glade:213 msgid "Grid Lines" msgstr "" -#: src/ui/gui/data-editor.glade:223 src/ui/gui/data-editor.glade:633 -#: src/ui/gui/data-editor.glade:1345 src/ui/gui/data-editor.glade:1523 +#: src/ui/gui/data-editor.glade:221 src/ui/gui/data-editor.glade:631 +#: src/ui/gui/data-editor.glade:1343 src/ui/gui/data-editor.glade:1521 msgid "Value Labels" msgstr "" -#: src/ui/gui/data-editor.glade:235 +#: src/ui/gui/data-editor.glade:233 msgid "Data" msgstr "" -#: src/ui/gui/data-editor.glade:242 src/ui/gui/data-editor.glade:514 +#: src/ui/gui/data-editor.glade:240 src/ui/gui/data-editor.glade:512 msgid "Variables" msgstr "" -#: src/ui/gui/data-editor.glade:261 src/ui/gui/data-editor.glade:568 +#: src/ui/gui/data-editor.glade:259 src/ui/gui/data-editor.glade:566 msgid "Insert Variable" msgstr "" -#: src/ui/gui/data-editor.glade:270 +#: src/ui/gui/data-editor.glade:268 msgid "Insert Cases" msgstr "" -#: src/ui/gui/data-editor.glade:279 src/ui/gui/data-editor.glade:502 -#: src/ui/gui/data-editor.glade:1893 +#: src/ui/gui/data-editor.glade:277 src/ui/gui/data-editor.glade:500 +#: src/ui/gui/data-editor.glade:1891 msgid "Go To Case" msgstr "" -#: src/ui/gui/data-editor.glade:294 src/ui/gui/data-editor.glade:1958 +#: src/ui/gui/data-editor.glade:292 src/ui/gui/data-editor.glade:1956 msgid "Sort Cases" msgstr "" -#: src/ui/gui/data-editor.glade:303 +#: src/ui/gui/data-editor.glade:301 msgid "Transpose" msgstr "" -#: src/ui/gui/data-editor.glade:311 +#: src/ui/gui/data-editor.glade:309 msgid "Restructure" msgstr "" -#: src/ui/gui/data-editor.glade:319 +#: src/ui/gui/data-editor.glade:317 msgid "Merge Files" msgstr "" -#: src/ui/gui/data-editor.glade:327 +#: src/ui/gui/data-editor.glade:325 msgid "Aggregate" msgstr "" -#: src/ui/gui/data-editor.glade:341 src/ui/gui/data-editor.glade:589 +#: src/ui/gui/data-editor.glade:339 src/ui/gui/data-editor.glade:587 msgid "Split File" msgstr "" -#: src/ui/gui/data-editor.glade:349 src/ui/gui/data-editor.glade:613 +#: src/ui/gui/data-editor.glade:347 src/ui/gui/data-editor.glade:611 msgid "Select Cases" msgstr "" -#: src/ui/gui/data-editor.glade:357 src/ui/gui/data-editor.glade:601 +#: src/ui/gui/data-editor.glade:355 src/ui/gui/data-editor.glade:599 msgid "Weight Cases" msgstr "" -#: src/ui/gui/data-editor.glade:368 src/ui/gui/syntax-editor.glade:232 +#: src/ui/gui/data-editor.glade:366 src/ui/gui/syntax-editor.glade:234 msgid "_Windows" msgstr "" -#: src/ui/gui/data-editor.glade:376 src/ui/gui/syntax-editor.glade:242 +#: src/ui/gui/data-editor.glade:374 src/ui/gui/syntax-editor.glade:244 msgid "_Minimise All Windows" msgstr "" -#: src/ui/gui/data-editor.glade:388 src/ui/gui/syntax-editor.glade:254 +#: src/ui/gui/data-editor.glade:386 src/ui/gui/syntax-editor.glade:256 msgid "_Help" msgstr "" -#: src/ui/gui/data-editor.glade:395 src/ui/gui/syntax-editor.glade:263 +#: src/ui/gui/data-editor.glade:393 src/ui/gui/syntax-editor.glade:265 msgid "_Reference Manual" msgstr "" -#: src/ui/gui/data-editor.glade:402 src/ui/gui/syntax-editor.glade:271 +#: src/ui/gui/data-editor.glade:400 src/ui/gui/syntax-editor.glade:273 msgid "_About" msgstr "" -#: src/ui/gui/data-editor.glade:439 -msgid "Save" -msgstr "" - -#: src/ui/gui/data-editor.glade:451 +#: src/ui/gui/data-editor.glade:449 msgid "Print" msgstr "" -#: src/ui/gui/data-editor.glade:471 +#: src/ui/gui/data-editor.glade:469 msgid "Undo" msgstr "" -#: src/ui/gui/data-editor.glade:482 +#: src/ui/gui/data-editor.glade:480 msgid "Redo" msgstr "" -#: src/ui/gui/data-editor.glade:535 +#: src/ui/gui/data-editor.glade:533 msgid "Find" msgstr "" -#: src/ui/gui/data-editor.glade:555 +#: src/ui/gui/data-editor.glade:553 msgid "Insert Case" msgstr "" -#: src/ui/gui/data-editor.glade:646 +#: src/ui/gui/data-editor.glade:644 msgid "Use Sets" msgstr "" -#: src/ui/gui/data-editor.glade:728 +#: src/ui/gui/data-editor.glade:726 msgid "Data View" msgstr "" -#: src/ui/gui/data-editor.glade:755 +#: src/ui/gui/data-editor.glade:753 msgid "Variable View" msgstr "" -#: src/ui/gui/data-editor.glade:785 +#: src/ui/gui/data-editor.glade:783 msgid "Information Area" msgstr "" -#: src/ui/gui/data-editor.glade:804 +#: src/ui/gui/data-editor.glade:802 msgid "Processor Area" msgstr "" -#: src/ui/gui/data-editor.glade:829 +#: src/ui/gui/data-editor.glade:827 msgid "OMS Area" msgstr "" -#: src/ui/gui/data-editor.glade:854 +#: src/ui/gui/data-editor.glade:852 msgid "Case Counter Area" msgstr "" -#: src/ui/gui/data-editor.glade:879 +#: src/ui/gui/data-editor.glade:877 msgid "Filter Use Status Area" msgstr "" -#: src/ui/gui/data-editor.glade:905 +#: src/ui/gui/data-editor.glade:903 msgid "Weight Status Area" msgstr "" -#: src/ui/gui/data-editor.glade:931 +#: src/ui/gui/data-editor.glade:929 msgid "Split File Status Area" msgstr "" -#: src/ui/gui/data-editor.glade:961 +#: src/ui/gui/data-editor.glade:959 msgid "Variable Type" msgstr "" -#: src/ui/gui/data-editor.glade:996 src/ui/gui/psppire-var-store.c:476 +#: src/ui/gui/data-editor.glade:994 src/ui/gui/psppire-var-store.c:476 msgid "Comma" msgstr "" -#: src/ui/gui/data-editor.glade:1011 src/ui/gui/psppire-var-store.c:477 +#: src/ui/gui/data-editor.glade:1009 src/ui/gui/psppire-var-store.c:477 msgid "Dot" msgstr "" -#: src/ui/gui/data-editor.glade:1026 +#: src/ui/gui/data-editor.glade:1024 msgid "Scientific notation" msgstr "" -#: src/ui/gui/data-editor.glade:1041 src/ui/gui/psppire-var-store.c:479 +#: src/ui/gui/data-editor.glade:1039 src/ui/gui/psppire-var-store.c:479 msgid "Date" msgstr "" -#: src/ui/gui/data-editor.glade:1056 src/ui/gui/psppire-var-store.c:480 +#: src/ui/gui/data-editor.glade:1054 src/ui/gui/psppire-var-store.c:480 msgid "Dollar" msgstr "" -#: src/ui/gui/data-editor.glade:1071 +#: src/ui/gui/data-editor.glade:1069 msgid "Custom currency" msgstr "" -#: src/ui/gui/data-editor.glade:1163 +#: src/ui/gui/data-editor.glade:1161 msgid "positive" msgstr "" -#: src/ui/gui/data-editor.glade:1169 +#: src/ui/gui/data-editor.glade:1167 msgid "negative" msgstr "" -#: src/ui/gui/data-editor.glade:1182 +#: src/ui/gui/data-editor.glade:1180 msgid "Sample" msgstr "" -#: src/ui/gui/data-editor.glade:1232 +#: src/ui/gui/data-editor.glade:1230 msgid "Width:" msgstr "" -#: src/ui/gui/data-editor.glade:1276 +#: src/ui/gui/data-editor.glade:1274 msgid "Decimal Places:" msgstr "" -#: src/ui/gui/data-editor.glade:1443 +#: src/ui/gui/data-editor.glade:1441 msgid "Value Label:" msgstr "" -#: src/ui/gui/data-editor.glade:1456 +#: src/ui/gui/data-editor.glade:1454 msgid "Value:" msgstr "" -#: src/ui/gui/data-editor.glade:1589 +#: src/ui/gui/data-editor.glade:1587 msgid "Missing Values" msgstr "" -#: src/ui/gui/data-editor.glade:1607 +#: src/ui/gui/data-editor.glade:1605 msgid "_Range plus one optional discrete missing value" msgstr "" -#: src/ui/gui/data-editor.glade:1631 +#: src/ui/gui/data-editor.glade:1629 msgid "_Low:" msgstr "" -#: src/ui/gui/data-editor.glade:1660 +#: src/ui/gui/data-editor.glade:1658 msgid "_High:" msgstr "" -#: src/ui/gui/data-editor.glade:1701 +#: src/ui/gui/data-editor.glade:1699 msgid "Di_screte value:" msgstr "" -#: src/ui/gui/data-editor.glade:1748 +#: src/ui/gui/data-editor.glade:1746 msgid "_No missing values" msgstr "" -#: src/ui/gui/data-editor.glade:1765 +#: src/ui/gui/data-editor.glade:1763 msgid "_Discrete missing values" msgstr "" -#: src/ui/gui/data-editor.glade:1910 +#: src/ui/gui/data-editor.glade:1908 msgid "Case Number:" msgstr "" -#: src/ui/gui/data-editor.glade:2019 +#: src/ui/gui/data-editor.glade:2017 msgid "Sort by:" msgstr "" -#: src/ui/gui/data-editor.glade:2068 src/ui/gui/sort-cases-dialog.c:279 +#: src/ui/gui/data-editor.glade:2066 src/ui/gui/sort-cases-dialog.c:279 msgid "Ascending" msgstr "" -#: src/ui/gui/data-editor.glade:2081 src/ui/gui/sort-cases-dialog.c:281 +#: src/ui/gui/data-editor.glade:2079 src/ui/gui/sort-cases-dialog.c:281 msgid "Descending" msgstr "" -#: src/ui/gui/data-editor.glade:2097 +#: src/ui/gui/data-editor.glade:2095 msgid "Sort Order" msgstr "" -#: src/ui/gui/helper.c:113 +#: src/ui/gui/helper.c:115 msgid "Sorry. The help system hasn't yet been implemented." msgstr "" -#: src/ui/gui/helper.c:136 +#: src/ui/gui/helper.c:138 #, c-format msgid "Cannot open reference manual: %s" msgstr "" @@ -4576,11 +4606,11 @@ msgstr "" msgid "Save Syntax" msgstr "" -#: src/ui/gui/syntax-editor.c:135 src/ui/gui/syntax-editor.c:525 +#: src/ui/gui/syntax-editor.c:135 src/ui/gui/syntax-editor.c:519 msgid "Syntax Files (*.sps) " msgstr "" -#: src/ui/gui/syntax-editor.c:517 +#: src/ui/gui/syntax-editor.c:511 msgid "Open Syntax" msgstr "" @@ -4588,23 +4618,23 @@ msgstr "" msgid "Psppire Syntax Editor" msgstr "" -#: src/ui/gui/syntax-editor.glade:187 +#: src/ui/gui/syntax-editor.glade:189 msgid "_Run" msgstr "" -#: src/ui/gui/syntax-editor.glade:196 +#: src/ui/gui/syntax-editor.glade:198 msgid "All" msgstr "" -#: src/ui/gui/syntax-editor.glade:204 +#: src/ui/gui/syntax-editor.glade:206 msgid "Selection" msgstr "" -#: src/ui/gui/syntax-editor.glade:212 +#: src/ui/gui/syntax-editor.glade:214 msgid "Current Line" msgstr "" -#: src/ui/gui/syntax-editor.glade:220 +#: src/ui/gui/syntax-editor.glade:222 msgid "To End" msgstr "" @@ -4656,22 +4686,22 @@ msgstr "" msgid "Scale" msgstr "" -#: src/ui/gui/window-manager.c:131 +#: src/ui/gui/window-manager.c:136 #, c-format msgid "Syntax%d" msgstr "" -#: src/ui/gui/window-manager.c:132 src/ui/gui/window-manager.c:160 +#: src/ui/gui/window-manager.c:137 src/ui/gui/window-manager.c:165 #, c-format msgid "%s --- PSPP Syntax Editor" msgstr "" -#: src/ui/gui/window-manager.c:135 +#: src/ui/gui/window-manager.c:140 #, c-format msgid "Untitled%d" msgstr "" -#: src/ui/gui/window-manager.c:136 src/ui/gui/window-manager.c:163 +#: src/ui/gui/window-manager.c:141 src/ui/gui/window-manager.c:168 #, c-format msgid "%s --- PSPP Data Editor" msgstr "" @@ -4729,7 +4759,7 @@ msgid "" "Report bugs to <%s>.\n" msgstr "" -#: src/ui/terminal/main.c:129 +#: src/ui/terminal/main.c:128 msgid "" "Stopping syntax file processing here to avoid a cascade of dependent command " "failures." diff --git a/src/language/ChangeLog b/src/language/ChangeLog index 47d3f375..afe8195a 100644 --- a/src/language/ChangeLog +++ b/src/language/ChangeLog @@ -1,3 +1,8 @@ +Sun Jan 21 15:31:52 WST 2007 John Darrington + + * command.c command.h: Renamed cmd_parse to cmd_parse_in_state. + New function cmd_parse. + Wed Dec 13 21:02:51 2006 Ben Pfaff * command.def: Add DELETE VARS. diff --git a/src/language/command.c b/src/language/command.c index b46d1e83..2284deed 100644 --- a/src/language/command.c +++ b/src/language/command.c @@ -136,14 +136,15 @@ static enum cmd_result do_parse_command (struct lexer *, struct dataset *, enum dot. On failure, skips to the terminating dot. Returns the command's success or failure result. */ enum cmd_result -cmd_parse (struct lexer *lexer, struct dataset *ds, enum cmd_state state) +cmd_parse_in_state (struct lexer *lexer, struct dataset *ds, + enum cmd_state state) { int result; - + som_new_series (); result = do_parse_command (lexer, ds, state); - if (cmd_result_is_failure (result)) + if (cmd_result_is_failure (result)) lex_discard_rest_of_command (lexer); unset_cmd_algorithm (); @@ -152,6 +153,17 @@ cmd_parse (struct lexer *lexer, struct dataset *ds, enum cmd_state state) return result; } +enum cmd_result +cmd_parse (struct lexer *lexer, struct dataset *ds) +{ + const struct dictionary *dict = dataset_dict (ds); + return cmd_parse_in_state (lexer, ds, + proc_has_source (ds) && + dict_get_var_cnt (dict) > 0 ? + CMD_STATE_DATA : CMD_STATE_INITIAL); +} + + /* Parses an entire command, from command name to terminating dot. */ static enum cmd_result diff --git a/src/language/command.h b/src/language/command.h index 5e4671ae..32cb3c2e 100644 --- a/src/language/command.h +++ b/src/language/command.h @@ -32,8 +32,8 @@ enum cmd_result /* Range of successful return values available for use by agreement between a command and the caller of cmd_parse(). */ - CMD_PRIVATE_FIRST = 4, - CMD_PRIVATE_LAST = 127, + CMD_PRIVATE_FIRST = 4, + CMD_PRIVATE_LAST = 127, /* Various kinds of failures. */ CMD_FAILURE = -1, /* Not executed at all. */ @@ -54,9 +54,12 @@ enum cmd_state }; struct dataset; -struct lexer; +struct lexer; -enum cmd_result cmd_parse (struct lexer *lexer, struct dataset *ds, enum cmd_state); +enum cmd_result cmd_parse_in_state (struct lexer *lexer, struct dataset *ds, + enum cmd_state); + +enum cmd_result cmd_parse (struct lexer *lexer, struct dataset *ds); struct command; const char *cmd_complete (const char *, const struct command **); diff --git a/src/language/data-io/inpt-pgm.c b/src/language/data-io/inpt-pgm.c index cfd2c746..71860ebf 100644 --- a/src/language/data-io/inpt-pgm.c +++ b/src/language/data-io/inpt-pgm.c @@ -119,7 +119,7 @@ cmd_input_program (struct lexer *lexer, struct dataset *ds) inside_input_program = true; for (;;) { - enum cmd_result result = cmd_parse (lexer, ds, CMD_STATE_INPUT_PROGRAM); + enum cmd_result result = cmd_parse_in_state (lexer, ds, CMD_STATE_INPUT_PROGRAM); if (result == CMD_END_INPUT_PROGRAM) break; else if (result == CMD_END_CASE) diff --git a/src/language/syntax-string-source.c b/src/language/syntax-string-source.c index 85478bf7..5f495776 100644 --- a/src/language/syntax-string-source.c +++ b/src/language/syntax-string-source.c @@ -123,3 +123,11 @@ create_syntax_string_source (const char *format, ...) return (struct getl_interface *) sss; } + +/* Return the syntax currently contained in S. + Primarily usefull for debugging */ +const char * +syntax_string_source_get_syntax (const struct syntax_string_source *s) +{ + return ds_cstr (&s->buffer); +} diff --git a/src/language/syntax-string-source.h b/src/language/syntax-string-source.h index 58742bc6..a69fa8fd 100644 --- a/src/language/syntax-string-source.h +++ b/src/language/syntax-string-source.h @@ -22,8 +22,11 @@ struct getl_interface; -struct getl_interface * -create_syntax_string_source (const char *fmt, ...); +struct syntax_string_source; + +struct getl_interface * create_syntax_string_source (const char *fmt, ...); + +const char * syntax_string_source_get_syntax (const struct syntax_string_source *s); #endif diff --git a/src/ui/gui/ChangeLog b/src/ui/gui/ChangeLog index 18558a0a..0b9592ee 100644 --- a/src/ui/gui/ChangeLog +++ b/src/ui/gui/ChangeLog @@ -1,3 +1,16 @@ +Tue Jan 23 21:10:01 WST 2007 John Darrington + + * helper.c helper.h: New function execute_syntax. + + * syntax-editor.c syntax-editor.glade: Disabled data open/save menu + items. + + * data-editor.c data-editor.glade data-editor.h: Enabled data + open/save/save_as menu-items. + + * window-manager.h window-manager.c (default_window_name) : New + function. + Sat Jan 13 07:47:26 WST 2007 John Darrington * psppire-case-file.c psppire-data-store.c psppire-dialog.c diff --git a/src/ui/gui/data-editor.c b/src/ui/gui/data-editor.c index 262ae543..9aa6501b 100644 --- a/src/ui/gui/data-editor.c +++ b/src/ui/gui/data-editor.c @@ -45,6 +45,7 @@ #include "weight-cases-dialog.h" +static void register_data_editor_actions (struct data_editor *de); static void insert_variable (GtkCheckMenuItem *m, gpointer data); @@ -124,7 +125,7 @@ new_data_editor (void) GtkSheet *var_sheet ; PsppireVarStore *vs; - de = g_malloc (sizeof (*de)); + de = g_malloc0 (sizeof (*de)); e = (struct editor_window *) de; @@ -149,6 +150,9 @@ new_data_editor (void) connect_help (de->xml); + + register_data_editor_actions (de); + de->invoke_weight_cases_dialog = gtk_action_new ("weight-cases-dialog", _("Weights"), @@ -161,15 +165,15 @@ new_data_editor (void) e->window = GTK_WINDOW (get_widget_assert (de->xml, "data_editor")); - g_signal_connect (get_widget_assert (de->xml,"file_new_data"), - "activate", - G_CALLBACK (new_data_window), - e->window); + g_signal_connect_swapped (get_widget_assert (de->xml,"file_new_data"), + "activate", + G_CALLBACK (gtk_action_activate), + de->action_data_new); - g_signal_connect (get_widget_assert (de->xml,"file_open_data"), - "activate", - G_CALLBACK (open_data_window), - e->window); + g_signal_connect_swapped (get_widget_assert (de->xml,"file_open_data"), + "activate", + G_CALLBACK (gtk_action_activate), + de->action_data_open); g_signal_connect (get_widget_assert (de->xml,"file_new_syntax"), "activate", @@ -181,6 +185,16 @@ new_data_editor (void) G_CALLBACK (open_syntax_window), e->window); + g_signal_connect_swapped (get_widget_assert (de->xml,"file_save"), + "activate", + G_CALLBACK (gtk_action_activate), + de->action_data_save); + + g_signal_connect_swapped (get_widget_assert (de->xml,"file_save_as"), + "activate", + G_CALLBACK (gtk_action_activate), + de->action_data_save_as); + g_signal_connect (get_widget_assert (de->xml,"edit_clear"), "activate", @@ -197,13 +211,6 @@ new_data_editor (void) get_widget_assert (de->xml, "data_weight-cases") ); - /* - g_signal_connect (get_widget_assert (de->xml,"data_weight-cases"), - "activate", - G_CALLBACK (weight_cases_dialog), - de); - */ - g_signal_connect (get_widget_assert (de->xml,"help_about"), "activate", @@ -283,6 +290,13 @@ new_data_editor (void) "toggled", G_CALLBACK (value_labels_toggled), de); + gtk_action_connect_proxy (de->action_data_open, + get_widget_assert (de->xml, "button-open") + ); + + gtk_action_connect_proxy (de->action_data_save, + get_widget_assert (de->xml, "button-save") + ); gtk_action_connect_proxy (de->invoke_weight_cases_dialog, get_widget_assert (de->xml, "button-weight-cases") @@ -298,7 +312,6 @@ new_data_editor (void) G_CALLBACK (minimise_all_windows), NULL); - select_sheet (de, PAGE_DATA_SHEET); return de; @@ -411,59 +424,6 @@ data_editor_select_sheet (struct data_editor *de, gint page) } -void -open_data_window (GtkMenuItem *menuitem, gpointer parent) -{ - bool finished = FALSE; - - GtkWidget *dialog; - - GtkFileFilter *filter ; - - dialog = gtk_file_chooser_dialog_new (_("Open"), - GTK_WINDOW (parent), - GTK_FILE_CHOOSER_ACTION_OPEN, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, - NULL); - - filter = gtk_file_filter_new (); - gtk_file_filter_set_name (filter, _("System Files (*.sav)")); - gtk_file_filter_add_pattern (filter, "*.sav"); - gtk_file_filter_add_pattern (filter, "*.SAV"); - gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); - - filter = gtk_file_filter_new (); - gtk_file_filter_set_name (filter, _("Portable Files (*.por) ")); - gtk_file_filter_add_pattern (filter, "*.por"); - gtk_file_filter_add_pattern (filter, "*.POR"); - gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); - - filter = gtk_file_filter_new (); - gtk_file_filter_set_name (filter, _("All Files")); - gtk_file_filter_add_pattern (filter, "*"); - gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); - - do { - - if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) - { - gchar *file_name = - gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); - - g_free (file_name); - } - else - finished = TRUE; - - } while ( ! finished ) ; - - gtk_widget_destroy (dialog); -} - - - - static void status_bar_activate (GtkCheckMenuItem *menuitem, gpointer data) { @@ -864,3 +824,266 @@ weight_cases_dialog (GObject *o, gpointer data) } + + +static void data_save_as_dialog (GtkAction *, struct data_editor *de); +static void new_file (GtkAction *, struct editor_window *de); +static void open_data_dialog (GtkAction *, struct editor_window *de); +static void data_save (GtkAction *action, struct data_editor *e); + + +/* Create the GtkActions and connect to their signals */ +static void +register_data_editor_actions (struct data_editor *de) +{ + de->action_data_open = + gtk_action_new ("data-open-dialog", + _("Open"), + _("Open a data file"), + "gtk-open"); + + g_signal_connect (de->action_data_open, "activate", + G_CALLBACK (open_data_dialog), de); + + + de->action_data_save = gtk_action_new ("data-save", + _("Save"), + _("Save data to file"), + "gtk-save"); + + g_signal_connect (de->action_data_save, "activate", + G_CALLBACK (data_save), de); + + + + de->action_data_save_as = gtk_action_new ("data-save-as-dialog", + _("Save As"), + _("Save data to file"), + "gtk-save"); + + g_signal_connect (de->action_data_save_as, "activate", + G_CALLBACK (data_save_as_dialog), de); + + de->action_data_new = + gtk_action_new ("data-new", + _("New"), + _("New data file"), + NULL); + + g_signal_connect (de->action_data_new, "activate", + G_CALLBACK (new_file), de); +} + +/* Returns true if NAME has a suffix which might denote a PSPP file */ +static gboolean +name_has_suffix (const gchar *name) +{ + if ( g_str_has_suffix (name, ".sav")) + return TRUE; + if ( g_str_has_suffix (name, ".SAV")) + return TRUE; + if ( g_str_has_suffix (name, ".por")) + return TRUE; + if ( g_str_has_suffix (name, ".POR")) + return TRUE; + + return FALSE; +} + +/* Append SUFFIX to the filename of DE */ +static void +append_filename_suffix (struct data_editor *de, const gchar *suffix) +{ + if ( ! name_has_suffix (de->file_name)) + { + gchar *s = de->file_name; + de->file_name = g_strconcat (de->file_name, suffix, NULL); + g_free (s); + } +} + +/* Save DE to file */ +static void +save_file (struct data_editor *de) +{ + struct getl_interface *sss; + + g_assert (de->file_name); + + if ( de->save_as_portable ) + { + append_filename_suffix (de, ".por"); + sss = create_syntax_string_source ("EXPORT OUTFILE='%s'.", + de->file_name); + } + else + { + append_filename_suffix (de, ".sav"); + sss = create_syntax_string_source ("SAVE OUTFILE='%s'.", + de->file_name); + } + + execute_syntax (sss); +} + + +/* Callback for data_save action. + If there's an existing file name, then just save, + otherwise prompt for a file name, then save */ +static void +data_save (GtkAction *action, struct data_editor *de) +{ + if ( de->file_name) + save_file (de); + else + data_save_as_dialog (action, de); +} + + +/* Callback for data_save_as action. Prompt for a filename and save */ +static void +data_save_as_dialog (GtkAction *action, struct data_editor *de) +{ + struct editor_window *e = (struct editor_window *) de; + + GtkWidget *button_sys; + GtkWidget *dialog = + gtk_file_chooser_dialog_new (_("Save"), + GTK_WINDOW (e->window), + GTK_FILE_CHOOSER_ACTION_SAVE, + GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, + GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, + NULL); + + GtkFileFilter *filter = gtk_file_filter_new (); + gtk_file_filter_set_name (filter, _("System Files (*.sav)")); + gtk_file_filter_add_pattern (filter, "*.sav"); + gtk_file_filter_add_pattern (filter, "*.SAV"); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); + + filter = gtk_file_filter_new (); + gtk_file_filter_set_name (filter, _("Portable Files (*.por) ")); + gtk_file_filter_add_pattern (filter, "*.por"); + gtk_file_filter_add_pattern (filter, "*.POR"); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); + + filter = gtk_file_filter_new (); + gtk_file_filter_set_name (filter, _("All Files")); + gtk_file_filter_add_pattern (filter, "*"); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); + + { + GtkWidget *button_por; + GtkWidget *vbox = gtk_vbox_new (TRUE, 5); + button_sys = + gtk_radio_button_new_with_label (NULL, _("System File")); + + button_por = + gtk_radio_button_new_with_label + (gtk_radio_button_get_group (GTK_RADIO_BUTTON(button_sys)), + _("Portable File")); + + gtk_box_pack_start_defaults (GTK_BOX (vbox), button_sys); + gtk_box_pack_start_defaults (GTK_BOX (vbox), button_por); + + gtk_widget_show_all (vbox); + + gtk_file_chooser_set_extra_widget (GTK_FILE_CHOOSER(dialog), vbox); + } + + switch (gtk_dialog_run (GTK_DIALOG (dialog))) + { + case GTK_RESPONSE_ACCEPT: + { + g_free (de->file_name); + + de->file_name = + gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); + + de->save_as_portable = + ! gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button_sys)); + + save_file (de); + + window_set_name_from_filename (e, de->file_name); + } + break; + default: + break; + } + + gtk_widget_destroy (dialog); +} + + +/* Callback for data_new action. + Performs the NEW FILE command */ +static void +new_file (GtkAction *action, struct editor_window *de) +{ + struct getl_interface *sss = + create_syntax_string_source ("NEW FILE."); + + execute_syntax (sss); + + default_window_name (de); +} + + +/* Callback for the data_open action. + Prompts for a filename and opens it */ +static void +open_data_dialog (GtkAction *action, struct editor_window *de) +{ + GtkWidget *dialog = + gtk_file_chooser_dialog_new (_("Open"), + GTK_WINDOW (de->window), + GTK_FILE_CHOOSER_ACTION_OPEN, + GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, + GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, + NULL); + + GtkFileFilter *filter = gtk_file_filter_new (); + gtk_file_filter_set_name (filter, _("System Files (*.sav)")); + gtk_file_filter_add_pattern (filter, "*.sav"); + gtk_file_filter_add_pattern (filter, "*.SAV"); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); + + filter = gtk_file_filter_new (); + gtk_file_filter_set_name (filter, _("Portable Files (*.por) ")); + gtk_file_filter_add_pattern (filter, "*.por"); + gtk_file_filter_add_pattern (filter, "*.POR"); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); + + filter = gtk_file_filter_new (); + gtk_file_filter_set_name (filter, _("All Files")); + gtk_file_filter_add_pattern (filter, "*"); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (dialog), filter); + + switch (gtk_dialog_run (GTK_DIALOG (dialog))) + { + case GTK_RESPONSE_ACCEPT: + { + struct getl_interface *sss; + gchar *file_name = + gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog)); + + sss = create_syntax_string_source ("GET FILE='%s'.", file_name); + + execute_syntax (sss); + + window_set_name_from_filename (de, file_name); + + g_free (file_name); + } + break; + default: + break; + } + + gtk_widget_destroy (dialog); +} + + + + diff --git a/src/ui/gui/data-editor.glade b/src/ui/gui/data-editor.glade index abbf9363..11ba2eb9 100644 --- a/src/ui/gui/data-editor.glade +++ b/src/ui/gui/data-editor.glade @@ -72,23 +72,21 @@ - + True - False + True gtk-save True True - - + True - False + True gtk-save-as True True - @@ -424,7 +422,7 @@ True - False + True Open gtk-open @@ -435,7 +433,7 @@ True - False + True Save gtk-save diff --git a/src/ui/gui/data-editor.h b/src/ui/gui/data-editor.h index 67784021..71bfd0e6 100644 --- a/src/ui/gui/data-editor.h +++ b/src/ui/gui/data-editor.h @@ -28,8 +28,18 @@ struct data_editor { struct editor_window parent; + + GtkAction *action_data_new; + GtkAction *action_data_open; + GtkAction *action_data_save_as; + GtkAction *action_data_save; + GtkAction *invoke_weight_cases_dialog; + GladeXML *xml; + + gboolean save_as_portable; + gchar *file_name; }; @@ -37,8 +47,6 @@ struct data_editor * new_data_editor (void); void new_data_window (GtkMenuItem *, gpointer); -void open_data_window (GtkMenuItem *, gpointer); - void data_editor_select_sheet (struct data_editor *de, gint page); diff --git a/src/ui/gui/helper.c b/src/ui/gui/helper.c index 4d88c81b..e14ab06a 100644 --- a/src/ui/gui/helper.c +++ b/src/ui/gui/helper.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include @@ -20,6 +21,7 @@ #include #include #include +#include "psppire-data-store.h" #include @@ -141,12 +143,14 @@ reference_manual (GtkMenuItem *menu, gpointer data) extern struct dataset *the_dataset; extern struct source_stream *the_source_stream; +extern PsppireDataStore *the_data_store; -void +gboolean execute_syntax (struct getl_interface *sss) { struct lexer *lexer; - g_return_if_fail (proc_has_source (the_dataset)); + + g_return_val_if_fail (proc_has_source (the_dataset), FALSE); lexer = lex_create (the_source_stream); @@ -154,11 +158,7 @@ execute_syntax (struct getl_interface *sss) for (;;) { - const struct dictionary *dict = dataset_dict (the_dataset); - - int result = cmd_parse (lexer, the_dataset, - dict_get_var_cnt (dict) > 0 ? - CMD_STATE_DATA : CMD_STATE_INITIAL); + int result = cmd_parse (lexer, the_dataset); if (result == CMD_EOF || result == CMD_FINISH) break; @@ -167,6 +167,19 @@ execute_syntax (struct getl_interface *sss) getl_abort_noninteractive (the_source_stream); lex_destroy (lexer); + + /* The GUI must *always* have a data source, even if it's an empty one. + Therefore, we find that there is none, (for example NEW FILE was the last + item in the syntax) then we create a new one. */ + if ( ! proc_has_source (the_dataset)) + proc_set_source (the_dataset, + storage_source_create (the_data_store->case_file->flexifile) + ); + + /* GUI syntax needs this implicit EXECUTE command at the end of + every script. Otherwise commands like GET could leave the GUI without + a casefile. */ + return procedure (the_dataset, NULL, NULL); } diff --git a/src/ui/gui/helper.h b/src/ui/gui/helper.h index f5e0f5b0..a0c36bd6 100644 --- a/src/ui/gui/helper.h +++ b/src/ui/gui/helper.h @@ -46,7 +46,7 @@ void connect_help (GladeXML *); void reference_manual (GtkMenuItem *, gpointer); struct getl_interface; -void execute_syntax (struct getl_interface *sss); +gboolean execute_syntax (struct getl_interface *sss); #endif diff --git a/src/ui/gui/syntax-editor.c b/src/ui/gui/syntax-editor.c index 469ee4f6..4ca3dfe7 100644 --- a/src/ui/gui/syntax-editor.c +++ b/src/ui/gui/syntax-editor.c @@ -341,12 +341,6 @@ new_syntax_editor (void) G_CALLBACK (new_data_window), e->window); - g_signal_connect (get_widget_assert (xml,"file_open_data"), - "activate", - G_CALLBACK (open_data_window), - e->window); - - g_signal_connect (get_widget_assert (xml,"help_about"), "activate", G_CALLBACK (about_new), diff --git a/src/ui/gui/syntax-editor.glade b/src/ui/gui/syntax-editor.glade index 80e6bff3..c27eef44 100644 --- a/src/ui/gui/syntax-editor.glade +++ b/src/ui/gui/syntax-editor.glade @@ -62,6 +62,7 @@ True + False _Data True @@ -92,6 +93,7 @@ True + False _Data True diff --git a/src/ui/gui/window-manager.c b/src/ui/gui/window-manager.c index a4f5064d..f25a97ab 100644 --- a/src/ui/gui/window-manager.c +++ b/src/ui/gui/window-manager.c @@ -110,6 +110,11 @@ window_create (enum window_type type, const gchar *name) return e; } +void +default_window_name (struct editor_window *w) +{ + set_window_name (w, NULL); +} static void set_window_name (struct editor_window *e, diff --git a/src/ui/gui/window-manager.h b/src/ui/gui/window-manager.h index 3c5655ed..994cdbe2 100644 --- a/src/ui/gui/window-manager.h +++ b/src/ui/gui/window-manager.h @@ -25,6 +25,8 @@ const gchar * window_name (const struct editor_window *); void window_set_name_from_filename (struct editor_window *e, const gchar *filename); +void default_window_name (struct editor_window *w); + void minimise_all_windows (void); diff --git a/src/ui/terminal/main.c b/src/ui/terminal/main.c index 81b09a1d..2f7d1fbe 100644 --- a/src/ui/terminal/main.c +++ b/src/ui/terminal/main.c @@ -118,9 +118,8 @@ main (int argc, char **argv) for (;;) { - int result = cmd_parse (the_lexer, the_dataset, - proc_has_source (the_dataset) - ? CMD_STATE_DATA : CMD_STATE_INITIAL); + int result = cmd_parse (the_lexer, the_dataset); + if (result == CMD_EOF || result == CMD_FINISH) break; if (result == CMD_CASCADING_FAILURE && -- 2.30.2