summaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
authorDaniel Gray <DanielFGray@gmail.com>2017-02-08 23:05:02 -0600
committerJunegunn Choi <junegunn.c@gmail.com>2017-02-09 14:05:02 +0900
commitafa25d8c57f8ffc1ba54623360456baa9321abd7 (patch)
tree9fd5e2a34f5ce5fb487dca5188476728f572c016 /shell
parent1ba7acf4bd4314f299b57cea73cbd376bde5aba3 (diff)
[zsh] Do not cd when cancelling alt+c keybind (#840)
Diffstat (limited to 'shell')
-rw-r--r--shell/key-bindings.zsh7
1 files changed, 6 insertions, 1 deletions
diff --git a/shell/key-bindings.zsh b/shell/key-bindings.zsh
index abf75597..6ac38d2c 100644
--- a/shell/key-bindings.zsh
+++ b/shell/key-bindings.zsh
@@ -41,7 +41,12 @@ fzf-cd-widget() {
local cmd="${FZF_ALT_C_COMMAND:-"command find -L . \\( -path '*/\\.*' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' \\) -prune \
-o -type d -print 2> /dev/null | sed 1d | cut -b3-"}"
setopt localoptions pipefail 2> /dev/null
- cd "${$(eval "$cmd" | FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} --reverse $FZF_DEFAULT_OPTS $FZF_ALT_C_OPTS" $(__fzfcmd) +m):-.}"
+ local dir="$(eval "$cmd" | FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} --reverse $FZF_DEFAULT_OPTS $FZF_ALT_C_OPTS" $(__fzfcmd) +m)"
+ if [[ -z "$dir" ]]; then
+ zle redisplay
+ return 0
+ fi
+ cd "$dir"
local ret=$?
zle reset-prompt
typeset -f zle-line-init >/dev/null && zle zle-line-init