X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=interactive.h;h=fb39860541fef3c09c74b3bff9031c48e7b7a625;hp=a19f8a4736700c99f60c84f6448ba5e9092885ac;hb=901f6642a51445accaf88ab80f6bc80757f74149;hpb=9de1287d67c9562e9140c6dc7deb0c01c4e10cc0;ds=inline diff --git a/interactive.h b/interactive.h index a19f8a47..fb398605 100644 --- a/interactive.h +++ b/interactive.h @@ -59,6 +59,10 @@ struct i9e_client_info { int loglevel; /** Complete input lines are passed to this callback function. */ int (*line_handler)(char *line); + /** In single key mode, this callback is executed instead. */ + int (*key_handler)(int key); + /** The array of valid key sequences for libreadline. */ + char **bound_keyseqs; /** File descriptors to use for input/output/log. */ int fds[3]; /** Text of the current prompt. */ @@ -71,6 +75,11 @@ struct i9e_client_info { * completer if the cursor is not on the first word. */ struct i9e_completer *completers; + /** + * If non-NULL, this node is attached immediately to the stdout btr + * node of the i9e subsystem. + */ + struct btr_node *producer; }; int i9e_open(struct i9e_client_info *ici, struct sched *s); @@ -86,3 +95,4 @@ char **i9e_complete_commands(const char *word, struct i9e_completer *completers) void i9e_complete_option(char **opts, struct i9e_completion_info *ci, struct i9e_completion_result *cr); int i9e_print_completions(struct i9e_completer *completers); +int i9e_get_error(void);