aboutsummaryrefslogtreecommitdiff
path: root/config.def.h
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2014-09-09 12:27:07 +0200
committerMarc André Tanner <mat@brain-dump.org>2014-09-09 12:27:07 +0200
commit1a459e5d929d9d14d42916fa15fbea632beaae94 (patch)
tree399790462a8aabc8ef86ab51e4077fcfa30b39a4 /config.def.h
parent4dec86b2ee68890fcd339670404aca708ac88b90 (diff)
downloadvis-1a459e5d929d9d14d42916fa15fbea632beaae94.tar.gz
vis-1a459e5d929d9d14d42916fa15fbea632beaae94.tar.xz
Add all 26 registers
Diffstat (limited to 'config.def.h')
-rw-r--r--config.def.h65
1 files changed, 61 insertions, 4 deletions
diff --git a/config.def.h b/config.def.h
index ec8e141..8e7970b 100644
--- a/config.def.h
+++ b/config.def.h
@@ -31,6 +31,7 @@ enum {
VIS_MODE_VISUAL,
VIS_MODE_READLINE,
VIS_MODE_PROMPT,
+ VIS_MODE_INSERT_REGISTER,
VIS_MODE_INSERT,
VIS_MODE_REPLACE,
};
@@ -672,6 +673,29 @@ static KeyBinding vis_registers[] = { /* {a-zA-Z0-9.%#:-"} */
{ { NONE('"'), NONE('a') }, reg, { .i = REG_a } },
{ { NONE('"'), NONE('b') }, reg, { .i = REG_b } },
{ { NONE('"'), NONE('c') }, reg, { .i = REG_c } },
+ { { NONE('"'), NONE('d') }, reg, { .i = REG_d } },
+ { { NONE('"'), NONE('e') }, reg, { .i = REG_e } },
+ { { NONE('"'), NONE('f') }, reg, { .i = REG_f } },
+ { { NONE('"'), NONE('g') }, reg, { .i = REG_g } },
+ { { NONE('"'), NONE('h') }, reg, { .i = REG_h } },
+ { { NONE('"'), NONE('i') }, reg, { .i = REG_i } },
+ { { NONE('"'), NONE('j') }, reg, { .i = REG_j } },
+ { { NONE('"'), NONE('k') }, reg, { .i = REG_k } },
+ { { NONE('"'), NONE('l') }, reg, { .i = REG_l } },
+ { { NONE('"'), NONE('m') }, reg, { .i = REG_m } },
+ { { NONE('"'), NONE('n') }, reg, { .i = REG_n } },
+ { { NONE('"'), NONE('o') }, reg, { .i = REG_o } },
+ { { NONE('"'), NONE('p') }, reg, { .i = REG_p } },
+ { { NONE('"'), NONE('q') }, reg, { .i = REG_q } },
+ { { NONE('"'), NONE('r') }, reg, { .i = REG_r } },
+ { { NONE('"'), NONE('s') }, reg, { .i = REG_s } },
+ { { NONE('"'), NONE('t') }, reg, { .i = REG_t } },
+ { { NONE('"'), NONE('u') }, reg, { .i = REG_u } },
+ { { NONE('"'), NONE('v') }, reg, { .i = REG_v } },
+ { { NONE('"'), NONE('w') }, reg, { .i = REG_w } },
+ { { NONE('"'), NONE('x') }, reg, { .i = REG_x } },
+ { { NONE('"'), NONE('y') }, reg, { .i = REG_y } },
+ { { NONE('"'), NONE('z') }, reg, { .i = REG_z } },
{ /* empty last element, array terminator */ },
};
@@ -762,6 +786,36 @@ static void vis_prompt_leave(Mode *new) {
vis_prompt_hide(vis);
}
+static KeyBinding vis_insert_register_mode[] = {
+ { { CONTROL('R'), NONE('a') }, insert_register, { .i = REG_a } },
+ { { CONTROL('R'), NONE('b') }, insert_register, { .i = REG_b } },
+ { { CONTROL('R'), NONE('c') }, insert_register, { .i = REG_c } },
+ { { CONTROL('R'), NONE('d') }, insert_register, { .i = REG_d } },
+ { { CONTROL('R'), NONE('e') }, insert_register, { .i = REG_e } },
+ { { CONTROL('R'), NONE('f') }, insert_register, { .i = REG_f } },
+ { { CONTROL('R'), NONE('g') }, insert_register, { .i = REG_g } },
+ { { CONTROL('R'), NONE('h') }, insert_register, { .i = REG_h } },
+ { { CONTROL('R'), NONE('i') }, insert_register, { .i = REG_i } },
+ { { CONTROL('R'), NONE('j') }, insert_register, { .i = REG_j } },
+ { { CONTROL('R'), NONE('k') }, insert_register, { .i = REG_k } },
+ { { CONTROL('R'), NONE('l') }, insert_register, { .i = REG_l } },
+ { { CONTROL('R'), NONE('m') }, insert_register, { .i = REG_m } },
+ { { CONTROL('R'), NONE('n') }, insert_register, { .i = REG_n } },
+ { { CONTROL('R'), NONE('o') }, insert_register, { .i = REG_o } },
+ { { CONTROL('R'), NONE('p') }, insert_register, { .i = REG_p } },
+ { { CONTROL('R'), NONE('q') }, insert_register, { .i = REG_q } },
+ { { CONTROL('R'), NONE('r') }, insert_register, { .i = REG_r } },
+ { { CONTROL('R'), NONE('s') }, insert_register, { .i = REG_s } },
+ { { CONTROL('R'), NONE('t') }, insert_register, { .i = REG_t } },
+ { { CONTROL('R'), NONE('u') }, insert_register, { .i = REG_u } },
+ { { CONTROL('R'), NONE('v') }, insert_register, { .i = REG_v } },
+ { { CONTROL('R'), NONE('w') }, insert_register, { .i = REG_w } },
+ { { CONTROL('R'), NONE('x') }, insert_register, { .i = REG_x } },
+ { { CONTROL('R'), NONE('y') }, insert_register, { .i = REG_y } },
+ { { CONTROL('R'), NONE('z') }, insert_register, { .i = REG_z } },
+ { /* empty last element, array terminator */ },
+};
+
static KeyBinding vis_insert_mode[] = {
{ { CONTROL('L') }, switchmode, { .i = VIS_MODE_NORMAL } },
{ { CONTROL('[') }, switchmode, { .i = VIS_MODE_NORMAL } },
@@ -769,9 +823,6 @@ static KeyBinding vis_insert_mode[] = {
{ { CONTROL('J') }, insert_newline, { NULL } },
{ { CONTROL('M') }, insert_newline, { NULL } },
{ { CONTROL('O') }, switchmode, { .i = VIS_MODE_OPERATOR } },
- { { CONTROL('R'), NONE('a') }, insert_register, { .i = REG_a } },
- { { CONTROL('R'), NONE('b') }, insert_register, { .i = REG_b } },
- { { CONTROL('R'), NONE('c') }, insert_register, { .i = REG_c } },
{ { CONTROL('V') }, insert_verbatim, { NULL } },
{ /* empty last element, array terminator */ },
};
@@ -866,9 +917,15 @@ static Mode vis_modes[] = {
.input = vis_insert_input,
.leave = vis_prompt_leave,
},
+ [VIS_MODE_INSERT_REGISTER] = {
+ .name = "INSERT-REGISTER",
+ .common_prefix = true,
+ .parent = &vis_modes[VIS_MODE_READLINE],
+ .bindings = vis_insert_register_mode,
+ },
[VIS_MODE_INSERT] = {
.name = "INSERT",
- .parent = &vis_modes[VIS_MODE_READLINE],
+ .parent = &vis_modes[VIS_MODE_INSERT_REGISTER],
.bindings = vis_insert_mode,
.input = vis_insert_input,
.idle = snapshot,