Remove the PROMPT, CPROMPT, and DPROMPT settings.
authorBen Pfaff <blp@cs.stanford.edu>
Sun, 21 Nov 2010 20:00:32 +0000 (12:00 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Sat, 4 Dec 2010 19:11:15 +0000 (11:11 -0800)
These settings will be insufficient to configure prompting for the new
lexer, which is able to detect more special cases in syntax and report
them through the prompt.  (However, if users actually want this feature,
then we could add it; it's not difficult.)

NEWS
doc/utilities.texi
src/language/prompt.c
src/language/prompt.h
src/language/utilities/set.q
src/ui/terminal/main.c

diff --git a/NEWS b/NEWS
index ade64c06f1f0cfa9f1dbb2fab153cee96095c759..a96068484d3ae8aaa1ebe87619d64ebf5875c6e6 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,5 @@
 PSPP NEWS -- history of user-visible changes.
-Time-stamp: <2010-11-21 11:14:27 blp>
+Time-stamp: <2010-11-21 11:58:30 blp>
 Copyright (C) 1996-9, 2000, 2008, 2009, 2010 Free Software Foundation, Inc.
 See the end for copying conditions.
 
@@ -20,8 +20,9 @@ Changes from 0.7.3 to 0.7.6:
 
  * The HOST command has been updated to use more modern syntax.
 
- * The SET and SHOW commands no longer support the ENDCMD and NULLINE
-   subcommands.  The defaults are now the only supported values.
+ * The SET and SHOW commands no longer support the ENDCMD, NULLINE,
+   PROMPT, CPROMPT, and DPROMPT subcommands.  The defaults are now the
+   only supported values.
 
 Changes from 0.7.2 to 0.7.3:
 
index b132f6b0cf4918ffd885b1c1436f3ea0a55ec1d5..b729b88bb14cb16b9df9f29b59095c4fea51f425 100644 (file)
@@ -359,11 +359,8 @@ SET
         /RRB=@{NATIVE,ISL,ISB,IDL,IDB,VF,VD,VG,ZS,ZL@}
 
 (interaction)
-        /CPROMPT='cprompt_string'
-        /DPROMPT='dprompt_string'
         /MXERRS=max_errs
         /MXWARNS=max_warnings
-        /PROMPT='prompt'
         /WORKSPACE=workspace_size
 
 (program execution)
@@ -530,13 +527,6 @@ Interaction subcommands affect the way that PSPP interacts with an
 online user.  The interaction subcommands are
 
 @table @asis
-@item CPROMPT
-The command continuation prompt.  The default is @samp{    > }.
-
-@item DPROMPT
-Prompt used when expecting data input within @cmd{BEGIN DATA} (@pxref{BEGIN
-DATA}).  The default is @samp{data> }.
-
 @item MXERRS
 The maximum number of errors before PSPP halts processing of the current
 command file.  The default is 50.
@@ -548,9 +538,6 @@ The special value of zero means that all warning situations should be ignored.
 No warnings will be issued, except a single initial warning advising the user
 that warnings will not be given.
 The default value is 100.
-
-@item PROMPT
-The command prompt.  The default is @samp{PSPP> }.
 @end table
 
 Program execution subcommands control the way that PSPP commands
index b527807875b897d17c1d2ff662932978cbf2f74e..8701f6c9b5ccce54d4a2e6e7c9e2948dd27557a5 100644 (file)
 
 #include "xalloc.h"
 
-/* Current prompts in each style. */
-static char *prompts[PROMPT_CNT];
-
 /* Current prompting style. */
 static enum prompt_style current_style;
 
-/* Initializes prompts. */
-void
-prompt_init (void)
-{
-  prompts[PROMPT_FIRST] = xstrdup ("PSPP> ");
-  prompts[PROMPT_LATER] = xstrdup ("    > ");
-  prompts[PROMPT_DATA] = xstrdup ("data> ");
-  current_style = PROMPT_FIRST;
-}
-
-/* Frees prompts. */
-void
-prompt_done (void)
-{
-  int i;
-
-  for (i = 0; i < PROMPT_CNT; i++)
-    {
-      free (prompts[i]);
-      prompts[i] = NULL;
-    }
-}
-
 /* Gets the command prompt for the given STYLE. */
 const char *
 prompt_get (enum prompt_style style)
 {
-  assert (style < PROMPT_CNT);
-  return prompts[style];
-}
+  switch (style)
+    {
+    case PROMPT_FIRST:
+      return "PSPP> ";
 
-/* Sets the given STYLE's prompt to STRING. */
-void
-prompt_set (enum prompt_style style, const char *string)
-{
-  assert (style < PROMPT_CNT);
-  free (prompts[style]);
-  prompts[style] = xstrdup (string);
+    case PROMPT_LATER:
+      return "    > ";
+
+    case PROMPT_DATA:
+      return "data> ";
+
+    case PROMPT_CNT:
+      NOT_REACHED ();
+    }
+  NOT_REACHED ();
 }
 
 /* Sets STYLE as the current prompt style. */
index 648eb9d11dd7e027a053606079df2e27776b5436..aa5733aad6d7dcd8bd9e8033d3e48494bcf1acb3 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPP - a program for statistical analysis.
-   Copyright (C) 1997-9, 2000 Free Software Foundation, Inc.
+   Copyright (C) 1997-9, 2000, 2010 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -27,15 +27,9 @@ enum prompt_style
     PROMPT_CNT
   };
 
-
-void prompt_init (void);
-void prompt_done (void);
-
 enum prompt_style prompt_get_style (void);
-
-const char *prompt_get (enum prompt_style);
-void prompt_set (enum prompt_style, const char *);
 void prompt_set_style (enum prompt_style);
 
+const char *prompt_get (enum prompt_style);
 
 #endif /* PROMPT_H */
index a07efedf9e4418209c1e1537d9f88b5c9b9b8630..5fa7406164bcbe921312a34ce372ff629956c7d8 100644 (file)
@@ -32,7 +32,6 @@
 #include <language/command.h>
 #include <language/lexer/format-parser.h>
 #include <language/lexer/lexer.h>
-#include <language/prompt.h>
 #include <libpspp/compiler.h>
 #include <libpspp/copyleft.h>
 #include <libpspp/float-format.h>
@@ -70,9 +69,7 @@ int tgetnum (const char *);
      cce=string;
      compression=compress:on/off;
      cpi=integer "x>0" "%s must be greater than 0";
-     cprompt=string;
      decimal=dec:dot/comma;
-     dprompt=string;
      epoch=custom;
      errors=custom;
      format=custom;
@@ -97,7 +94,6 @@ int tgetnum (const char *);
      mxmemory=integer;
      mxwarns=integer;
      printback=custom;
-     prompt=string;
      results=custom;
      rib=rib:msbfirst/lsbfirst/vax/native;
      rrb=rrb:native/isl/isb/idl/idb/vf/vd/vg/zs/zl;
@@ -146,13 +142,6 @@ cmd_set (struct lexer *lexer, struct dataset *ds)
   if (cmd.sbc_cce)
     settings_set_cc ( cmd.s_cce, FMT_CCE);
 
-  if (cmd.sbc_prompt)
-    prompt_set (PROMPT_FIRST, cmd.s_prompt);
-  if (cmd.sbc_cprompt)
-    prompt_set (PROMPT_LATER, cmd.s_cprompt);
-  if (cmd.sbc_dprompt)
-    prompt_set (PROMPT_DATA, cmd.s_dprompt);
-
   if (cmd.sbc_decimal)
     settings_set_decimal_char (cmd.dec == STC_DOT ? '.' : ',');
 
index 64a7d2ec013e97a732b782570c25869b85fa669b..5fa1604143fe7a7ba136988d85401cafaf0d2b26 100644 (file)
@@ -39,7 +39,6 @@
 #include "gsl/gsl_errno.h"
 #include "language/command.h"
 #include "language/lexer/lexer.h"
-#include "language/prompt.h"
 #include "language/syntax-file.h"
 #include "libpspp/argv-parser.h"
 #include "libpspp/compiler.h"
@@ -94,7 +93,6 @@ main (int argc, char **argv)
 
   fh_init ();
   the_source_stream = create_source_stream ();
-  prompt_init ();
   readln_initialize ();
   settings_init ();
   terminal_check_size ();
@@ -159,7 +157,6 @@ main (int argc, char **argv)
   fh_done ();
   lex_destroy (the_lexer);
   destroy_source_stream (the_source_stream);
-  prompt_done ();
   readln_uninitialize ();
   output_close ();
   msg_ui_done ();