From afb87c6d29275e18faec6a8b96e7d5ab57bcb0f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Fri, 23 Oct 2015 12:30:30 +0200 Subject: vis: begin librarization of core vis primitives --- vis.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 vis.h (limited to 'vis.h') diff --git a/vis.h b/vis.h new file mode 100644 index 0000000..496c0d3 --- /dev/null +++ b/vis.h @@ -0,0 +1,48 @@ +#ifndef VIS_H +#define VIS_H + +#include "ui.h" +#include "editor.h" + +typedef Editor Vis; + +Vis *vis_new(Ui*); +#define vis_free editor_free + +void vis_run(Vis*, int argc, char *argv[]); +void vis_die(Vis*, const char *msg, ...); + +enum VisMode { + VIS_MODE_BASIC, + VIS_MODE_MOVE, + VIS_MODE_OPERATOR, + VIS_MODE_OPERATOR_OPTION, + VIS_MODE_NORMAL, + VIS_MODE_TEXTOBJ, + VIS_MODE_VISUAL, + VIS_MODE_VISUAL_LINE, + VIS_MODE_READLINE, + VIS_MODE_PROMPT, + VIS_MODE_INSERT, + VIS_MODE_REPLACE, + VIS_MODE_LAST, +}; + +enum VisOperator { + OP_DELETE, + OP_CHANGE, + OP_YANK, + OP_PUT, + OP_SHIFT_RIGHT, + OP_SHIFT_LEFT, + OP_CASE_CHANGE, + OP_JOIN, + OP_REPEAT_INSERT, + OP_REPEAT_REPLACE, + OP_CURSOR, +}; + +bool vis_signal_handler(Vis*, int signum, const siginfo_t *siginfo, + const void *context); + +#endif -- cgit v1.2.3