--- src/editline/readline.h.orig 2008-07-12 01:38:05.000000000 -0700
+++ src/editline/readline.h 2008-08-07 13:23:29.000000000 -0700
@@ -41,13 +41,19 @@
typedef void VCPFunction(char *);
typedef char *CPFunction(const char *, int);
typedef char **CPPFunction(const char *, int, int);
-typedef char *rl_compentry_func_t(const char *, int);
+typedef char *rl_compentry_func_t(const char *, int);
+typedef int rl_command_func_t (int, int);
+
+
+typedef struct {
+ int length;
+} HISTORY_STATE;
typedef void *histdata_t;
typedef struct _hist_entry {
const char *line;
- histdata_t *data;
+ histdata_t data;
} HIST_ENTRY;
typedef struct _keymap_entry {
@@ -81,12 +87,14 @@
#define RUBOUT 0x7f
#define ABORT_CHAR CTRL('G')
+#define RL_READLINE_VERSION 0x0402
#ifdef __cplusplus
extern "C" {
#endif
extern const char *rl_library_version;
+extern int rl_readline_version;
extern char *rl_readline_name;
extern FILE *rl_instream;
extern FILE *rl_outstream;
@@ -140,6 +148,7 @@
HIST_ENTRY *current_history(void);
HIST_ENTRY *history_get(int);
HIST_ENTRY *remove_history(int);
+HIST_ENTRY *replace_history_entry(int, const char *, histdata_t);
int history_total_bytes(void);
int history_set_pos(int);
HIST_ENTRY *previous_history(void);
@@ -149,10 +158,12 @@
int history_search_pos(const char *, int, int);
int read_history(const char *);
int write_history(const char *);
+int history_truncate_file (const char *, int);
int history_expand(char *, char **);
char **history_tokenize(const char *);
const char *get_history_event(const char *, int *, int);
char *history_arg_extract(int, int, const char *);
+HISTORY_STATE *history_get_history_state(void);
char *tilde_expand(char *);
char *filename_completion_function(const char *, int);
@@ -163,8 +174,9 @@
void rl_display_match_list(char **, int, int);
int rl_insert(int, int);
+int rl_insert_text(const char *);
void rl_reset_terminal(const char *);
-int rl_bind_key(int, int (*)(int, int));
+int rl_bind_key(int, rl_command_func_t *);
int rl_newline(int, int);
void rl_callback_read_char(void);
void rl_callback_handler_install(const char *, VCPFunction *);
@@ -194,7 +206,9 @@
void rl_set_keymap(Keymap);
Keymap rl_make_bare_keymap(void);
int rl_generic_bind(int, const char *, const char *, Keymap);
-int rl_bind_key_in_map(int, Function *, Keymap);
+int rl_bind_key_in_map(int, rl_command_func_t *, Keymap);
+void rl_cleanup_after_signal(void);
+void rl_free_line_state(void);
#ifdef __cplusplus
}
#endif