summaryrefslogtreecommitdiffstats
path: root/linenoise/linenoise.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2015-09-18 22:58:19 -0700
committerKaz Kylheku <kaz@kylheku.com>2015-09-18 22:58:19 -0700
commit033462f4fb79769d89069f7a8bb7e905b5f09e23 (patch)
tree0743e11d89ce81a5af0719462592ba33c17370a4 /linenoise/linenoise.h
parent34a8e91898d551d036742fd6fb45c57b8e95ad52 (diff)
downloadtxr-033462f4fb79769d89069f7a8bb7e905b5f09e23.tar.gz
txr-033462f4fb79769d89069f7a8bb7e905b5f09e23.tar.bz2
txr-033462f4fb79769d89069f7a8bb7e905b5f09e23.zip
linenoise: atom-gathering callback feature.
* linenoise/linenoise.c (struct lino_state): New members atom_callback and ca_ctx. (lino_set_atom_cb): New function. (edit): Ctrl-X Ctrl-A invokes atom callback, and inserts returned string. * linenoise/linenoise.h (lino_atom_cb_t): New function pointer typedef. (lino_set_atom_cb): Declared.
Diffstat (limited to 'linenoise/linenoise.h')
-rw-r--r--linenoise/linenoise.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/linenoise/linenoise.h b/linenoise/linenoise.h
index 6471993f..94cf3913 100644
--- a/linenoise/linenoise.h
+++ b/linenoise/linenoise.h
@@ -71,3 +71,6 @@ int lino_hist_load(lino_t *, const char *filename);
int lino_clear_screen(lino_t *);
void lino_set_multiline(lino_t *, int ml);
int lino_get_multiline(lino_t *);
+
+typedef char *lino_atom_cb_t(lino_t *, const char *line, int n, void *ctx);
+void lino_set_atom_cb(lino_t *, lino_atom_cb_t *, void *ctx);