From bdb94fba7db3d0b59954b474439c28fb1f3fa8d8 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Thu, 26 May 2016 00:52:06 +0900 Subject: [zsh] Fix #579 - Locally unset globsubst --- shell/completion.zsh | 8 ++------ shell/key-bindings.zsh | 1 + 2 files changed, 3 insertions(+), 6 deletions(-) (limited to 'shell') diff --git a/shell/completion.zsh b/shell/completion.zsh index 74d1ad32..0094fa74 100644 --- a/shell/completion.zsh +++ b/shell/completion.zsh @@ -31,7 +31,7 @@ fi ########################################################### __fzf_generic_path_completion() { - local base lbuf compgen fzf_opts suffix tail fzf dir leftover matches nnm + local base lbuf compgen fzf_opts suffix tail fzf dir leftover matches # (Q) flag removes a quoting level: "foo\ bar" => "foo bar" base=${(Q)1} lbuf=$2 @@ -41,10 +41,7 @@ __fzf_generic_path_completion() { tail=$6 [ ${FZF_TMUX:-1} -eq 1 ] && fzf="fzf-tmux -d ${FZF_TMUX_HEIGHT:-40%}" || fzf="fzf" - if ! setopt | \grep nonomatch > /dev/null; then - nnm=1 - setopt nonomatch - fi + setopt localoptions nonomatch dir="$base" while [ 1 ]; do if [ -z "$dir" -o -d ${~dir} ]; then @@ -66,7 +63,6 @@ __fzf_generic_path_completion() { dir=$(dirname "$dir") dir=${dir%/}/ done - [ -n "$nnm" ] && unsetopt nonomatch } _fzf_path_completion() { diff --git a/shell/key-bindings.zsh b/shell/key-bindings.zsh index f60bbaea..a173b12f 100644 --- a/shell/key-bindings.zsh +++ b/shell/key-bindings.zsh @@ -38,6 +38,7 @@ bindkey '\ec' fzf-cd-widget # CTRL-R - Paste the selected command from history into the command line fzf-history-widget() { local selected num + setopt localoptions noglobsubst selected=( $(fc -l 1 | $(__fzfcmd) +s --tac +m -n2..,.. --tiebreak=index --toggle-sort=ctrl-r ${=FZF_CTRL_R_OPTS} -q "${LBUFFER//$/\\$}") ) if [ -n "$selected" ]; then num=$selected[1] -- cgit v1.2.3