[install] Wait for a linefeed when asking for confirmation

Close #1035
This commit is contained in:
Junegunn Choi 2017-09-01 02:43:44 +09:00
parent 48adad5454
commit 5b7457ff08
No known key found for this signature in database
GPG Key ID: 254BC280FEF9C627
1 changed files with 8 additions and 8 deletions

16
install
View File

@ -59,14 +59,14 @@ cd "$(dirname "${BASH_SOURCE[0]}")"
fzf_base="$(pwd)"
ask() {
# If stdin is a tty, we are "interactive".
# non-interactive shell: wait for a linefeed
# interactive shell: continue after a single keypress
read_n=$([ -t 0 ] && echo "-n 1")
read -p "$1 ([y]/n) " $read_n -r
echo
[[ $REPLY =~ ^[Nn]$ ]]
while true; do
read -p "$1 ([y]/n) " -r
if [[ $REPLY =~ ^[Yy]$ ]]; then
return 1
elif [[ $REPLY =~ ^[Nn]$ ]]; then
return 0
fi
done
}
check_binary() {