From 3a6af27586c65bb9243c5af7c43a40619503db52 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Wed, 1 Mar 2017 16:07:04 +0900 Subject: [PATCH] [zsh] emulate -L zsh to avoid issues with incompatible options Close #858 --- shell/completion.zsh | 4 ++-- shell/key-bindings.zsh | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/shell/completion.zsh b/shell/completion.zsh index 9b9dba3..ccd18ce 100644 --- a/shell/completion.zsh +++ b/shell/completion.zsh @@ -46,7 +46,7 @@ __fzf_generic_path_completion() { tail=$6 fzf="$(__fzfcmd_complete)" - setopt localoptions nonomatch + setopt nonomatch dir="$base" while [ 1 ]; do if [[ -z "$dir" || -d ${~dir} ]]; then @@ -142,8 +142,8 @@ _fzf_complete_unalias() { } fzf-completion() { + emulate -L zsh local tokens cmd prefix trigger tail fzf matches lbuf d_cmds - setopt localoptions noshwordsplit noksh_arrays # http://zsh.sourceforge.net/FAQ/zshfaq03.html # http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion-Flags diff --git a/shell/key-bindings.zsh b/shell/key-bindings.zsh index 9b2353a..dbafafb 100644 --- a/shell/key-bindings.zsh +++ b/shell/key-bindings.zsh @@ -27,6 +27,7 @@ __fzfcmd() { } fzf-file-widget() { + emulate -L zsh LBUFFER="${LBUFFER}$(__fsel)" local ret=$? zle redisplay @@ -38,9 +39,10 @@ bindkey '^T' fzf-file-widget # ALT-C - cd into the selected directory fzf-cd-widget() { + emulate -L zsh + setopt pipefail 2> /dev/null local cmd="${FZF_ALT_C_COMMAND:-"command find -L . -mindepth 1 \\( -path '*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' \\) -prune \ -o -type d -print 2> /dev/null | cut -b3-"}" - setopt localoptions pipefail 2> /dev/null 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 @@ -57,8 +59,9 @@ bindkey '\ec' fzf-cd-widget # CTRL-R - Paste the selected command from history into the command line fzf-history-widget() { + emulate -L zsh + setopt pipefail 2> /dev/null local selected num - setopt localoptions noglobsubst pipefail 2> /dev/null selected=( $(fc -l 1 | FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} $FZF_DEFAULT_OPTS +s --tac -n2..,.. --tiebreak=index --bind=ctrl-r:toggle-sort $FZF_CTRL_R_OPTS --query=${(q)LBUFFER} +m" $(__fzfcmd)) ) local ret=$?