1/* bashhist.h -- interface to the bash history functions in bashhist.c. */
2
3/* Copyright (C) 1993 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 it under
8   the terms of the GNU General Public License as published by the Free
9   Software Foundation; either version 2, or (at your option) any later
10   version.
11
12   Bash is distributed in the hope that it will be useful, but WITHOUT ANY
13   WARRANTY; without even the implied warranty of MERCHANTABILITY or
14   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15   for more details.
16
17   You should have received a copy of the GNU General Public License along
18   with Bash; see the file COPYING.  If not, write to the Free Software
19   Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */
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 load_history __P((void));
55extern void save_history __P((void));
56extern int maybe_append_history __P((char *));
57extern int maybe_save_shell_history __P((void));
58extern char *pre_process_line __P((char *, int, int));
59extern void maybe_add_history __P((char *));
60extern void bash_add_history __P((char *));
61extern int check_add_history __P((char *, int));
62extern int history_number __P((void));
63
64extern void setup_history_ignore __P((char *));
65
66extern char *last_history_line __P((void));
67
68#endif /* _BASHHIST_H_ */
69