aboutsummaryrefslogtreecommitdiff
path: root/vis.c
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2015-09-15 15:21:41 +0200
committerMarc André Tanner <mat@brain-dump.org>2015-10-05 15:57:13 +0200
commit8a8e8907364455abe57878d081bb2c2c59dfe1c7 (patch)
tree6634d34999b4dfac5c85e0521330e6de3b3b6048 /vis.c
parent7c7683e48a62a678deceaaf17d40a3fac730bff2 (diff)
downloadvis-8a8e8907364455abe57878d081bb2c2c59dfe1c7.tar.gz
vis-8a8e8907364455abe57878d081bb2c2c59dfe1c7.tar.xz
vis: convert register specification to new input handling code
Diffstat (limited to 'vis.c')
-rw-r--r--vis.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/vis.c b/vis.c
index ce9cc82..12e6f9f 100644
--- a/vis.c
+++ b/vis.c
@@ -1110,9 +1110,17 @@ static const char *selection_restore(const char *keys, const Arg *arg) {
return keys;
}
+static const char *key2register(const char *keys, Register **reg) {
+ *reg = NULL;
+ if (!keys[0])
+ return NULL;
+ if (keys[0] >= 'a' && keys[0] <= 'z')
+ *reg = &vis->registers[keys[0] - 'a'];
+ return keys+1;
+}
+
static const char *reg(const char *keys, const Arg *arg) {
- vis->action.reg = &vis->registers[arg->i];
- return keys;
+ return key2register(keys, &vis->action.reg);
}
static const char *mark(const char *keys, const Arg *arg) {