[zsh] emulate -L zsh to avoid issues with incompatible options

Close #858
pull/870/head
Junegunn Choi 7 years ago
parent c89ac341e4
commit 3a6af27586
No known key found for this signature in database
GPG Key ID: 254BC280FEF9C627

@ -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

@ -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=$?

Loading…
Cancel
Save