diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2014-09-10 21:02:28 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2014-09-10 21:28:59 +0200 |
| commit | 457ce33d1ca3a23388b93dbfb4cb5dd429a6c0de (patch) | |
| tree | e6730f53ebf2f063f6a112e176bf7d9d3106daf2 | |
| parent | 5c82b53dc43eed66276166d4224749bf11c21e7f (diff) | |
| download | vis-457ce33d1ca3a23388b93dbfb4cb5dd429a6c0de.tar.gz vis-457ce33d1ca3a23388b93dbfb4cb5dd429a6c0de.tar.xz | |
Add normal mode commands 'O' and 'o'
| -rw-r--r-- | config.def.h | 2 | ||||
| -rw-r--r-- | vis.c | 8 |
2 files changed, 10 insertions, 0 deletions
diff --git a/config.def.h b/config.def.h index 8613794..7a0385c 100644 --- a/config.def.h +++ b/config.def.h @@ -341,6 +341,8 @@ static KeyBinding vis_normal[] = { { { NONE('.') }, repeat, { } }, { { NONE('n') }, movement, { .i = MOVE_SEARCH_FORWARD } }, { { NONE('N') }, movement, { .i = MOVE_SEARCH_BACKWARD } }, + { { NONE('o') }, openline, { .i = MOVE_LINE_NEXT } }, + { { NONE('O') }, openline, { .i = MOVE_LINE_PREV } }, { { NONE('x') }, call, { .f = editor_delete_key } }, { { NONE('r') }, replace, { NULL } }, { { NONE('i') }, switchmode, { .i = VIS_MODE_INSERT } }, @@ -313,6 +313,8 @@ static void insert(const Arg *arg); static void insert_tab(const Arg *arg); /* inserts a newline (either \n or \n\r depending on file type) */ static void insert_newline(const Arg *arg); +/* add a new line either before or after the one where the cursor currently is */ +static void openline(const Arg *arg); /* split current window horizontally (default) or vertically (if arg->b is set) */ static void split(const Arg *arg); /* perform last action i.e. action_prev again */ @@ -697,6 +699,12 @@ static void insert_newline(const Arg *arg) { insert(&(const Arg){ .s = "\n" }); } +static void openline(const Arg *arg) { + movement(&(const Arg){ .i = arg->i == MOVE_LINE_NEXT ? + MOVE_LINE_END : MOVE_LINE_PREV }); + insert_newline(NULL); +} + static void switchmode(const Arg *arg) { switchmode_to(&vis_modes[arg->i]); } |
