blob: c44e7c60739bbbd0389a5a616f8b2266f0bdbbc4 [file] [log] [blame]
cvpcs772f20a2010-06-02 11:02:31 -05001/* bashhist.h -- interface to the bash history functions in bashhist.c. */
2
3/* Copyright (C) 1993-2009 Free Software Foundation, Inc.
4
5 This file is part of GNU Bash, the Bourne Again SHell.
6
7 Bash 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.
11
12 Bash 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.
16
17 You should have received a copy of the GNU General Public License
18 along with Bash. If not, see <http://www.gnu.org/licenses/>.
19*/
20
21#if !defined (_BASHHIST_H_)
22#define _BASHHIST_H_
23
24#include "stdc.h"
25
26/* Flag values for history_control */
27#define HC_IGNSPACE 0x01
28#define HC_IGNDUPS 0x02
29#define HC_ERASEDUPS 0x04
30
31#define HC_IGNBOTH (HC_IGNSPACE|HC_IGNDUPS)
32
33extern int remember_on_history;
34extern int enable_history_list; /* value for `set -o history' */
35extern int literal_history; /* controlled by `shopt lithist' */
36extern int force_append_history;
37extern int history_lines_this_session;
38extern int history_lines_in_file;
39extern int history_expansion;
40extern int history_control;
41extern int command_oriented_history;
42extern int current_command_first_line_saved;
43extern int hist_last_line_added;
44extern int hist_last_line_pushed;
45
46# if defined (BANG_HISTORY)
47extern int history_expansion_inhibited;
48# endif /* BANG_HISTORY */
49
50extern void bash_initialize_history __P((void));
51extern void bash_history_reinit __P((int));
52extern void bash_history_disable __P((void));
53extern void bash_history_enable __P((void));
54extern void bash_clear_history __P((void));
55extern int bash_delete_histent __P((int));
56extern int bash_delete_last_history __P((void));
57extern void load_history __P((void));
58extern void save_history __P((void));
59extern int maybe_append_history __P((char *));
60extern int maybe_save_shell_history __P((void));
61extern char *pre_process_line __P((char *, int, int));
62extern void maybe_add_history __P((char *));
63extern void bash_add_history __P((char *));
64extern int check_add_history __P((char *, int));
65extern int history_number __P((void));
66
67extern void setup_history_ignore __P((char *));
68
69extern char *last_history_line __P((void));
70
71#endif /* _BASHHIST_H_ */