diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2014-09-04 07:52:14 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2014-09-04 07:52:14 +0200 |
| commit | d4dfde906022618bd9e0cbcd3559625186f77407 (patch) | |
| tree | e91333e934926335514ece77a7334d1c085d08a5 /vis.h | |
| parent | 2deb344c3122e91a745734ce77b3e0967f169c2a (diff) | |
| download | vis-d4dfde906022618bd9e0cbcd3559625186f77407.tar.gz vis-d4dfde906022618bd9e0cbcd3559625186f77407.tar.xz | |
Implement rudimentary mark handling
Diffstat (limited to 'vis.h')
| -rw-r--r-- | vis.h | 18 |
1 files changed, 12 insertions, 6 deletions
@@ -32,6 +32,15 @@ enum Reg { REG_LAST, }; +enum Mark { + MARK_a, + MARK_b, + MARK_c, + // ... + MARK_z, + MARK_LAST, +}; + struct Vis { int width, height; /* terminal size, available for all windows */ VisWin *windows; /* list of windows */ @@ -91,6 +100,7 @@ typedef struct { } Operator; typedef struct { + size_t (*cmd)(const Arg*); size_t (*win)(Win*); size_t (*txt)(Text*, size_t pos); enum { @@ -117,6 +127,8 @@ typedef struct { Movement *movement; TextObject *textobj; Register *reg; + Mark mark; + Arg arg; } Action; typedef struct { @@ -157,12 +169,6 @@ void vis_delete_key(Vis*); void vis_insert(Vis*, size_t pos, const char *data, size_t len); void vis_delete(Vis*, size_t pos, size_t len); -// mark handling -typedef int Mark; -void vis_mark_set(Vis*, Mark, size_t pos); -void vis_mark_goto(Vis*, Mark); -void vis_mark_clear(Vis*, Mark); - // TODO comment bool vis_syntax_load(Vis*, Syntax *syntaxes, Color *colors); void vis_syntax_unload(Vis*); |
