37#define EC_EDITLINE_HISTORY_SIZE 128
42#define EC_EDITLINE_HELP_ATTR "_help"
47#define EC_EDITLINE_CB_ATTR "_cb"
52#define EC_EDITLINE_DESC_ATTR "_desc"
struct ec_comp * ec_comp(void)
int ec_editline_interact(struct ec_editline *el, ec_editline_check_exit_cb_t check_exit_cb, void *opaque)
int ec_editline_set_prompt(struct ec_editline *editline, const char *prompt)
struct ec_editline * ec_editline(const char *prog, FILE *f_in, FILE *f_out, FILE *f_err, enum ec_editline_init_flags flags)
int ec_editline_set_callback(struct ec_node *node, ec_editline_command_cb_t cb)
int ec_editline_set_prompt_esc(struct ec_editline *editline, const char *prompt, char delim)
ssize_t ec_editline_get_error_helps(const struct ec_editline *editline, struct ec_editline_help **helps_out, size_t *char_idx)
const struct ec_node * ec_editline_get_node(const struct ec_editline *editline)
void ec_editline_free(struct ec_editline *editline)
struct ec_pnode * ec_editline_parse(struct ec_editline *editline)
int(* ec_editline_command_cb_t)(const struct ec_pnode *)
EditLine * ec_editline_get_el(struct ec_editline *editline)
int(* ec_editline_check_exit_cb_t)(void *opaque)
char * ec_editline_append_chars(const struct ec_comp *cmpl)
ssize_t ec_editline_get_completions(const struct ec_comp *cmpl, char ***matches_out)
int ec_editline_set_desc(struct ec_node *node, const char *desc)
int ec_editline_term_size(const struct ec_editline *editline, unsigned int *width, unsigned int *height)
int ec_editline_set_help(struct ec_node *node, const char *help)
int ec_editline_print_error_helps(const struct ec_editline *editline, const struct ec_editline_help *helps, size_t n, size_t char_idx)
void ec_editline_free_completions(char **matches, size_t n)
int ec_editline_set_node(struct ec_editline *editline, const struct ec_node *node)
void ec_editline_free_helps(struct ec_editline_help *helps, size_t n)
char * ec_editline_gets(struct ec_editline *editline)
int ec_editline_print_cols(struct ec_editline *editline, char const *const *matches, size_t n)
int ec_editline_print_helps(const struct ec_editline *editline, const struct ec_editline_help *helps, size_t n)
ssize_t ec_editline_get_helps(const struct ec_editline *editline, const char *line, struct ec_editline_help **helps_out)
int ec_editline_complete(EditLine *el, int c)
int ec_editline_set_history(struct ec_editline *editline, size_t hist_size, const char *hist_file)
char * ec_editline_curline(const struct ec_editline *editline, bool trim_after_cursor)
@ EC_EDITLINE_DISABLE_COMPLETION
@ EC_EDITLINE_DISABLE_SIGNALS
@ EC_EDITLINE_DEFAULT_SIGHANDLER
@ EC_EDITLINE_DISABLE_HISTORY
struct ec_node * ec_node(const char *typename, const char *id)
struct ec_pnode * ec_pnode(const struct ec_node *node)