changeset 3163:7f7228c0e658

[project @ 1998-04-10 16:51:47 by jwe]
author jwe
date Fri, 10 Apr 1998 16:51:47 +0000
parents 7c96e85c76db
children 45490c020e47
files scripts/miscellaneous/dump_1_pref.m scripts/miscellaneous/dump_prefs.m
diffstat 2 files changed, 79 insertions(+), 77 deletions(-) [+]
line wrap: on
line diff
deleted file mode 100644
--- a/scripts/miscellaneous/dump_1_pref.m
+++ /dev/null
@@ -1,40 +0,0 @@
-## Copyright (C) 1996, 1997 John W. Eaton
-##
-## This file is part of Octave.
-##
-## Octave is free software; you can redistribute it and/or modify it
-## under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 2, or (at your option)
-## any later version.
-##
-## Octave is distributed in the hope that it will be useful, but
-## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-## General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Octave; see the file COPYING.  If not, write to the Free
-## Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-## 02111-1307, USA.
-
-## This is an internal function used by dump_prefs().
-
-## Author: jwe
-
-function dump_1_pref (file, var)
-
-  if (nargin != 2)
-    usage ("dump_1_pref (file, var)");
-  endif
-
-  eval (sprintf ("tmp = %s;", var));
-
-  if (isstr (tmp))
-    fprintf (file, "  %s = \"%s\"\n", var, undo_string_escapes (tmp));
-  elseif (is_scalar (tmp))
-    fprintf (file, "  %s = %g\n", var, tmp);
-  else
-    fprintf (file, "  %s = \"wrong type arg\"\n", var);
-  endif
-
-endfunction
--- a/scripts/miscellaneous/dump_prefs.m
+++ b/scripts/miscellaneous/dump_prefs.m
@@ -31,43 +31,85 @@
     file = stdout;
   endif
 
-  ## XXX FIXME XXX -- vectors of strings would be really useful here...
-  ## XXX FIXME XXX -- maybe this should be a built-in function so that we
-  ## wouldn't have to remember to update it each time the list of
-  ## preference variables changes
+  ## XXX FIXME XXX -- it would be nice to be able to get the list of
+  ## built-in variables directly from Octave so that we wouldn't have to
+  ## remember to update it each time the list of preference variables
+  ## changes
 
-  dump_1_pref (file, "EDITOR");
-  dump_1_pref (file, "IMAGEPATH");
-  dump_1_pref (file, "INFO_FILE");
-  dump_1_pref (file, "LOADPATH");
-  dump_1_pref (file, "OCTAVE_VERSION");
-  dump_1_pref (file, "PAGER");
-  dump_1_pref (file, "PS1");
-  dump_1_pref (file, "PS2");
-  dump_1_pref (file, "automatic_replot");
-  dump_1_pref (file, "whitespace_in_literal_matrix");
-  dump_1_pref (file, "default_save_format");
-  dump_1_pref (file, "do_fortran_indexing");
-  dump_1_pref (file, "empty_list_elements_ok");
-  dump_1_pref (file, "eps");
-  dump_1_pref (file, "gnuplot_binary");
-  dump_1_pref (file, "ignore_function_time_stamp");
-  dump_1_pref (file, "implicit_str_to_num_ok");
-  dump_1_pref (file, "ok_to_lose_imaginary_part");
-  dump_1_pref (file, "output_max_field_width");
-  dump_1_pref (file, "output_precision");
-  dump_1_pref (file, "page_screen_output");
-  dump_1_pref (file, "prefer_column_vectors");
-  dump_1_pref (file, "print_answer_id_name");
-  dump_1_pref (file, "print_empty_dimensions");
-  dump_1_pref (file, "propagate_empty_matrices");
-  dump_1_pref (file, "resize_on_range_error");
-  dump_1_pref (file, "return_last_computed_value");
-  dump_1_pref (file, "save_precision");
-  dump_1_pref (file, "silent_functions");
-  dump_1_pref (file, "split_long_rows");
-  dump_1_pref (file, "treat_neg_dim_as_zero");
-  dump_1_pref (file, "warn_assign_as_truth_value");
-  dump_1_pref (file, "warn_divide_by_zero");
+  var_list = ["EDITOR";
+	      "EXEC_PATH";
+	      "IMAGEPATH";
+	      "INFO_FILE";
+	      "INFO_PROGRAM";
+	      "LOADPATH";
+	      "PAGER";
+	      "PS1";
+	      "PS2";
+	      "PS4";
+	      "automatic_replot";
+	      "beep_on_error";
+	      "completion_append_char";
+	      "default_eval_print_flag";
+	      "default_global_variable_value";
+	      "default_return_value";
+	      "default_save_format";
+	      "define_all_return_values";
+	      "do_fortran_indexing";
+	      "echo_executing_commands";
+	      "empty_list_elements_ok";
+	      "fixed_point_format";
+	      "gnuplot_binary";
+	      "gnuplot_command_end";
+	      "gnuplot_command_plot";
+	      "gnuplot_command_replot";
+	      "gnuplot_command_splot";
+	      "gnuplot_command_title";
+	      "gnuplot_command_using";
+	      "gnuplot_command_with";
+	      "gnuplot_has_frames";
+	      "gnuplot_has_multiplot";
+	      "history_file";
+	      "history_size";
+	      "ignore_function_time_stamp";
+	      "implicit_num_to_str_ok";
+	      "implicit_str_to_num_ok";
+	      "initialize_global_variables";
+	      "max_recursion_depth";
+	      "ok_to_lose_imaginary_part";
+	      "output_max_field_width";
+	      "output_precision";
+	      "page_output_immediately";
+	      "page_screen_output";
+	      "prefer_column_vectors";
+	      "print_answer_id_name";
+	      "print_empty_dimensions";
+	      "print_rhs_assign_val";
+	      "propagate_empty_matrices";
+	      "resize_on_range_error";
+	      "return_last_computed_value";
+	      "save_precision";
+	      "saving_history";
+	      "silent_functions";
+	      "split_long_rows";
+	      "string_fill_char";
+	      "struct_levels_to_print";
+	      "suppress_verbose_help_message";
+	      "treat_neg_dim_as_zero";
+	      "warn_assign_as_truth_value";
+	      "warn_divide_by_zero";
+	      "warn_function_name_clash";
+	      "warn_future_time_stamp";
+	      "warn_missing_semicolon";
+	      "warn_variable_switch_label";
+	      "whitespace_in_literal_matrix"];
+
+  for i = 1:rows(var_list)
+    var = deblank (var_list(i,:));
+    try
+      fprintf (file, "  %s = %s\n", var, type ("-q", var));
+    catch
+      fprintf (file, "# %s = <no value or error in displaying it>\n", var);
+    end_try_catch
+  endfor
 
 endfunction