diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/options.go | 2 | ||||
| -rw-r--r-- | src/terminal.go | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/options.go b/src/options.go index 730c1167..160fdd01 100644 --- a/src/options.go +++ b/src/options.go @@ -662,6 +662,8 @@ func parseKeymap(keymap map[int][]action, str string) { appendAction(actAbort) case "accept": appendAction(actAccept) + case "accept-non-empty": + appendAction(actAcceptNonEmpty) case "print-query": appendAction(actPrintQuery) case "replace-query": diff --git a/src/terminal.go b/src/terminal.go index 82f0ac9f..6881cdb5 100644 --- a/src/terminal.go +++ b/src/terminal.go @@ -170,6 +170,7 @@ const ( actBeginningOfLine actAbort actAccept + actAcceptNonEmpty actBackwardChar actBackwardDeleteChar actBackwardWord @@ -1656,6 +1657,10 @@ func (t *Terminal) Loop() { req(reqList) case actAccept: req(reqClose) + case actAcceptNonEmpty: + if len(t.selected) > 0 || t.merger.Length() > 0 || !t.reading && t.count == 0 { + req(reqClose) + } case actClearScreen: req(reqRedraw) case actTop: |
