diff --git a/bin/fzf-tmux b/bin/fzf-tmux index 4db037c2ffc8d2308844919df4918eb3e14b7842..d945c1547bd44c29bc46ac9751cb9b96d8a486d2 100755 --- a/bin/fzf-tmux +++ b/bin/fzf-tmux @@ -50,13 +50,19 @@ cleanup() { } trap cleanup EXIT SIGINT SIGTERM +fail() { + >&2 echo "$1" + exit 1 +} +fzf=$(which fzf 2> /dev/null) || fail "fzf executable not found" + mkfifo $fifo2 mkfifo $fifo3 if [ -t 0 ]; then - tmux split-window $opt 'bash -c "fzf '"$fzf_args"' > '$fifo2'; echo \$? > '$fifo3'"' + tmux split-window $opt 'sh -c "'$fzf' '"$fzf_args"' > '$fifo2'; echo \$? > '$fifo3'"' else mkfifo $fifo1 - tmux split-window $opt 'bash -c "fzf '"$fzf_args"' < '$fifo1' > '$fifo2'; echo \$? > '$fifo3'"' + tmux split-window $opt 'sh -c "'$fzf' '"$fzf_args"' < '$fifo1' > '$fifo2'; echo \$? > '$fifo3'"' cat <&0 > $fifo1 & fi cat $fifo2