From 11015df52f19a7eb551c460783c2f8ffb6c8afaf Mon Sep 17 00:00:00 2001 From: Amos Bird Date: Mon, 16 Jan 2017 10:58:13 +0800 Subject: [PATCH] Add half-page-{up,down} actions (#784) --- man/man1/fzf.1 | 2 ++ src/options.go | 4 ++++ src/terminal.go | 8 ++++++++ 3 files changed, 14 insertions(+) diff --git a/man/man1/fzf.1 b/man/man1/fzf.1 index a7abf84b..0225c8ea 100644 --- a/man/man1/fzf.1 +++ b/man/man1/fzf.1 @@ -470,6 +470,8 @@ e.g. \fBfzf --bind=ctrl-j:accept,ctrl-k:kill-line\fR \fBnext-history\fR (\fIctrl-n\fR on \fB--history\fR) \fBpage-down\fR \fIpgdn\fR \fBpage-up\fR \fIpgup\fR + \fBhalf-page-down\fR + \fBhalf-page-up\fR \fBpreview-down\fR \fBpreview-up\fR \fBpreview-page-down\fR diff --git a/src/options.go b/src/options.go index 7885325e..16020ddf 100644 --- a/src/options.go +++ b/src/options.go @@ -688,6 +688,10 @@ func parseKeymap(keymap map[int]actionType, execmap map[int]string, str string) keymap[key] = actPageUp case "page-down": keymap[key] = actPageDown + case "half-page-up": + keymap[key] = actHalfPageUp + case "half-page-down": + keymap[key] = actHalfPageDown case "previous-history": keymap[key] = actPreviousHistory case "next-history": diff --git a/src/terminal.go b/src/terminal.go index 02c8f1fe..4d207b48 100644 --- a/src/terminal.go +++ b/src/terminal.go @@ -186,6 +186,8 @@ const ( actUp actPageUp actPageDown + actHalfPageUp + actHalfPageDown actJump actJumpAccept actPrintQuery @@ -1478,6 +1480,12 @@ func (t *Terminal) Loop() { case actPageDown: t.vmove(-(t.maxItems() - 1)) req(reqList) + case actHalfPageUp: + t.vmove(t.maxItems() / 2) + req(reqList) + case actHalfPageDown: + t.vmove(-(t.maxItems() / 2)) + req(reqList) case actJump: t.jumping = jumpEnabled req(reqJump)