30 lines
644 B
Fish
30 lines
644 B
Fish
#!/bin/env fish
|
|
function confirm -a message default
|
|
set -l options (echo "[y/n]" | string replace $default (string upper $default))
|
|
|
|
while true
|
|
read -l value -P "$message $options "
|
|
or exit 1
|
|
set value (string lower "$value")
|
|
|
|
if [ -z "$value" ]
|
|
set value $default
|
|
end
|
|
|
|
if contains "$value" "0" "false" "n" "no"
|
|
false
|
|
return
|
|
end
|
|
|
|
if contains "$value" "1" "true" "y" "yes"
|
|
true
|
|
return
|
|
end
|
|
|
|
echo "The specified value `$value` is invalid!"
|
|
echo "Please try again"
|
|
end
|
|
end
|
|
|
|
confirm $argv
|