Bind CTRL-D to the new delete-char/eof action

- CTRL-D - delete-char/eof
- DEL - delete-char
pull/326/head
Junegunn Choi 9 years ago
parent cc0d5539ba
commit 13e040baee

@ -11,6 +11,7 @@ CHANGELOG
- `--header-lines`
- Added `eof` action which closes the finder only when the input is empty
- e.g. `export FZF_DEFAULT_OPTS="--bind esc:eof"`
- Added `delete-char/eof` action to differentiate `CTRL-D` and `DEL`
### Minor improvements/fixes

@ -189,7 +189,8 @@ e.g. \fBfzf --bind=ctrl-j:accept,ctrl-k:kill-line\fR
\fBbackward-word\fR \fIalt-b shift-left\fR
\fBbeginning-of-line\fR \fIctrl-a home\fR
\fBclear-screen\fR \fIctrl-l\fR
\fBdelete-char\fR \fIctrl-d del\fR
\fBdelete-char\fR \fIdel\fR
\fBdelete-char/eof\fR \fIctrl-d\fR
\fBdeselect-all\fR
\fBdown\fR \fIctrl-j ctrl-n down\fR
\fBend-of-line\fR \fIctrl-e end\fR

@ -497,6 +497,8 @@ func parseKeymap(keymap map[int]actionType, execmap map[int]string, toggleSort b
keymap[key] = actClearScreen
case "delete-char":
keymap[key] = actDeleteChar
case "delete-char/eof":
keymap[key] = actDeleteCharEof
case "end-of-line":
keymap[key] = actEndOfLine
case "eof":

@ -102,6 +102,7 @@ const (
actBackwardWord
actClearScreen
actDeleteChar
actDeleteCharEof
actEndOfLine
actEof
actForwardChar
@ -137,7 +138,7 @@ func defaultKeymap() map[int]actionType {
keymap[C.CtrlG] = actAbort
keymap[C.CtrlQ] = actAbort
keymap[C.ESC] = actAbort
keymap[C.CtrlD] = actDeleteChar
keymap[C.CtrlD] = actDeleteCharEof
keymap[C.CtrlE] = actEndOfLine
keymap[C.CtrlF] = actForwardChar
keymap[C.CtrlH] = actBackwardDeleteChar
@ -168,7 +169,7 @@ func defaultKeymap() map[int]actionType {
keymap[C.Home] = actBeginningOfLine
keymap[C.End] = actEndOfLine
keymap[C.Del] = actDeleteChar // FIXME Del vs. CTRL-D
keymap[C.Del] = actDeleteChar
keymap[C.PgUp] = actPageUp
keymap[C.PgDn] = actPageDown
@ -809,6 +810,8 @@ func (t *Terminal) Loop() {
case actAbort:
req(reqQuit)
case actDeleteChar:
t.delChar()
case actDeleteCharEof:
if !t.delChar() && t.cx == 0 {
req(reqQuit)
}

Loading…
Cancel
Save