init version.
[bush.git] / src / bushhist.h
blobb8b90ea9b0ce34b8e04e602573df91f68a5a0e4a
1 /* bushhist.h -- interface to the bush history functions in bushhist.c. */
3 /* Copyright (C) 1993-2020 Free Software Foundation, Inc.
5 This file is part of GNU Bush, the Bourne Again SHell.
7 Bush is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
12 Bush is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with Bush. If not, see <http://www.gnu.org/licenses/>.
21 #if !defined (_BUSHHIST_H_)
22 #define _BUSHHIST_H_
24 #include "stdc.h"
26 /* Flag values for history_control */
27 #define HC_IGNSPACE 0x01
28 #define HC_IGNDUPS 0x02
29 #define HC_ERASEDUPS 0x04
31 #define HC_IGNBOTH (HC_IGNSPACE|HC_IGNDUPS)
33 #if defined (STRICT_POSIX)
34 # undef HISTEXPAND_DEFAULT
35 # define HISTEXPAND_DEFAULT 0
36 #else
37 # if !defined (HISTEXPAND_DEFAULT)
38 # define HISTEXPAND_DEFAULT 1
39 # endif /* !HISTEXPAND_DEFAULT */
40 #endif
42 extern int remember_on_history;
43 extern int enable_history_list; /* value for `set -o history' */
44 extern int literal_history; /* controlled by `shopt lithist' */
45 extern int force_append_history;
46 extern int history_lines_this_session;
47 extern int history_lines_in_file;
48 extern int history_expansion;
49 extern int history_control;
50 extern int command_oriented_history;
51 extern int current_command_first_line_saved;
52 extern int current_command_first_line_comment;
53 extern int hist_last_line_added;
54 extern int hist_last_line_pushed;
56 extern int dont_save_function_defs;
58 # if defined (READLINE)
59 extern int hist_verify;
60 # endif
62 # if defined (BANG_HISTORY)
63 extern int history_expansion_inhibited;
64 extern int double_quotes_inhibit_history_expansion;
65 # endif /* BANG_HISTORY */
67 extern void bush_initialize_history PARAMS((void));
68 extern void bush_history_reinit PARAMS((int));
69 extern void bush_history_disable PARAMS((void));
70 extern void bush_history_enable PARAMS((void));
71 extern void bush_clear_history PARAMS((void));
72 extern int bush_delete_histent PARAMS((int));
73 extern int bush_delete_history_range PARAMS((int, int));
74 extern int bush_delete_last_history PARAMS((void));
75 extern void load_history PARAMS((void));
76 extern void save_history PARAMS((void));
77 extern int maybe_append_history PARAMS((char *));
78 extern int maybe_save_shell_history PARAMS((void));
79 extern char *pre_process_line PARAMS((char *, int, int));
80 extern void maybe_add_history PARAMS((char *));
81 extern void bush_add_history PARAMS((char *));
82 extern int check_add_history PARAMS((char *, int));
83 extern int history_number PARAMS((void));
85 extern void setup_history_ignore PARAMS((char *));
87 extern char *last_history_line PARAMS((void));
89 #endif /* _BUSHHIST_H_ */