From dcde07637141064a39c79db93d47f6fe588a782d Mon Sep 17 00:00:00 2001 From: lostd Date: Sun, 12 Jul 2015 13:32:31 +0100 Subject: [PATCH] Add keys to move to the first and last entry --- config.def.h | 8 ++++++++ noice.1 | 4 ++++ noice.c | 8 ++++++++ 3 files changed, 20 insertions(+) diff --git a/config.def.h b/config.def.h index 9b730ba4..167e6481 100644 --- a/config.def.h +++ b/config.def.h @@ -45,6 +45,14 @@ struct key bindings[] = { /* Page up */ { KEY_PPAGE, SEL_PGUP }, { CONTROL('U'), SEL_PGUP }, + /* Home */ + { KEY_HOME, SEL_HOME }, + { CONTROL('A'), SEL_HOME }, + { '^', SEL_HOME }, + /* End */ + { KEY_END, SEL_END }, + { CONTROL('E'), SEL_END }, + { '$', SEL_END }, /* Change dir */ { 'c', SEL_CD }, /* Toggle sort by time */ diff --git a/noice.1 b/noice.1 index 0c8eea03..ab400d61 100644 --- a/noice.1 +++ b/noice.1 @@ -37,6 +37,10 @@ Move to next entry. Scroll up half a page. .It Ic [Pgdown] or C-d Scroll down half a page. +.It Ic [Home] or C-a or ^ +Move to the first entry. +.It Ic [End] or C-e or $ +Move to the last entry. .It Ic l, [Right], [Return] or C-m Open file or enter directory. .It Ic h, [Left] or [Backspace] diff --git a/noice.c b/noice.c index 2c408fe1..228aedfa 100644 --- a/noice.c +++ b/noice.c @@ -54,6 +54,8 @@ enum action { SEL_PREV, SEL_PGDN, SEL_PGUP, + SEL_HOME, + SEL_END, SEL_CD, SEL_MTIME, SEL_REDRAW, @@ -827,6 +829,12 @@ moretyping: if (cur > 0) cur -= MIN((LINES - 4) / 2, cur); break; + case SEL_HOME: + cur = 0; + break; + case SEL_END: + cur = n - 1; + break; case SEL_CD: /* Read target dir */ printprompt("chdir: ");