summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTinmarino <tinmarino@gmail.com>2020-10-05 09:58:56 -0300
committerGitHub <noreply@github.com>2020-10-05 21:58:56 +0900
commitc0aa5a438f2484c9f931d1258e2eeb5ddc5927ad (patch)
tree65292c6a29d44bf10e975e795db58088498743a8
parent825d401403d34be3d4b0ac4888df576d612a5ec3 (diff)
Add preview-half-page-down and preview-half-page-up (#2145)
-rw-r--r--CHANGELOG.md3
-rw-r--r--man/man1/fzf.12
-rw-r--r--src/options.go4
-rw-r--r--src/terminal.go10
4 files changed, 19 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 22cd9d55..9fe183d6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -13,6 +13,9 @@ CHANGELOG
- Added `--preview-window` option for sharp edges (`--preview-window sharp`)
- Reduced vertical padding around the preview window when `--preview-window
noborder` is used
+- Added actions for preview window
+ - `preview-half-page-up`
+ - `preview-half-page-down`
- Vim
- Popup width and height can be given in absolute integer values
- Added `fzf#exec()` function for getting the path of fzf executable
diff --git a/man/man1/fzf.1 b/man/man1/fzf.1
index afd0713f..7fbc931a 100644
--- a/man/man1/fzf.1
+++ b/man/man1/fzf.1
@@ -718,6 +718,8 @@ A key or an event can be bound to one or more of the following actions.
\fBpreview-up\fR \fIshift-up\fR
\fBpreview-page-down\fR
\fBpreview-page-up\fR
+ \fBpreview-half-page-down\fR
+ \fBpreview-half-page-up\fR
\fBprevious-history\fR (\fIctrl-p\fR on \fB--history\fR)
\fBprint-query\fR (print query and exit)
\fBrefresh-preview\fR
diff --git a/src/options.go b/src/options.go
index a99ab0b6..7d19bfa2 100644
--- a/src/options.go
+++ b/src/options.go
@@ -854,6 +854,10 @@ func parseKeymap(keymap map[int][]action, str string) {
appendAction(actPreviewPageUp)
case "preview-page-down":
appendAction(actPreviewPageDown)
+ case "preview-half-page-up":
+ appendAction(actPreviewHalfPageUp)
+ case "preview-half-page-down":
+ appendAction(actPreviewHalfPageDown)
default:
t := isExecuteAction(specLower)
if t == actIgnore {
diff --git a/src/terminal.go b/src/terminal.go
index 428ee763..0fd917ac 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -236,6 +236,8 @@ const (
actPreviewDown
actPreviewPageUp
actPreviewPageDown
+ actPreviewHalfPageUp
+ actPreviewHalfPageDown
actPreviousHistory
actNextHistory
actExecute
@@ -1953,6 +1955,14 @@ func (t *Terminal) Loop() {
if t.hasPreviewWindow() {
scrollPreview(t.pwindow.Height())
}
+ case actPreviewHalfPageUp:
+ if t.hasPreviewWindow() {
+ scrollPreview(-t.pwindow.Height()/2)
+ }
+ case actPreviewHalfPageDown:
+ if t.hasPreviewWindow() {
+ scrollPreview(t.pwindow.Height()/2)
+ }
case actBeginningOfLine:
t.cx = 0
case actBackwardChar: