00001 /* 00002 00003 Copyright (C) 2000-2012 John W. Eaton 00004 00005 This file is part of Octave. 00006 00007 Octave is free software; you can redistribute it and/or modify it 00008 under the terms of the GNU General Public License as published by the 00009 Free Software Foundation; either version 3 of the License, or (at your 00010 option) any later version. 00011 00012 Octave is distributed in the hope that it will be useful, but WITHOUT 00013 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00014 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00015 for more details. 00016 00017 You should have received a copy of the GNU General Public License 00018 along with Octave; see the file COPYING. If not, see 00019 <http://www.gnu.org/licenses/>. 00020 00021 */ 00022 00023 #if !defined (octave_rl_hist_h) 00024 #define octave_rl_hist_h 1 00025 00026 #ifdef __cplusplus 00027 extern "C" 00028 { 00029 #endif 00030 00031 enum { 00032 HC_IGNSPACE = 0x01, 00033 HC_IGNDUPS = 0x02, 00034 HC_ERASEDUPS = 0x04 00035 }; 00036 00037 extern int octave_add_history (const char *, int); 00038 00039 extern int octave_where_history (void); 00040 00041 extern int octave_history_length (void); 00042 00043 extern int octave_max_input_history (void); 00044 00045 extern int octave_history_base (void); 00046 00047 extern void octave_stifle_history (int); 00048 00049 extern int octave_unstifle_history (void); 00050 00051 extern int octave_history_is_stifled (void); 00052 00053 extern int octave_history_set_pos (int); 00054 00055 extern int octave_read_history (const char *); 00056 00057 extern void octave_using_history (void); 00058 00059 extern int octave_read_history_range (const char *, int, int); 00060 00061 extern int octave_write_history (const char *); 00062 00063 extern int octave_append_history (int, const char *); 00064 00065 extern int octave_history_truncate_file (const char *, int); 00066 00067 extern void octave_remove_history (int); 00068 00069 extern char *octave_history_goto_mark (int n); 00070 00071 extern char *octave_history_get (int n); 00072 00073 extern char **octave_history_list (int, int); 00074 00075 extern void octave_replace_history_entry (int, const char *); 00076 00077 #ifdef __cplusplus 00078 } 00079 #endif 00080 00081 #endif