Features: 1) Improve handling of user prompts by consolidating read and printf usage;
Fixes: 1) Remove unnecessary else blocks for default values in prompt functions; 2) Ensure proper initialization of `response` variable to avoid undefined behavior; Extra: 1) Use consistent `printf` formatting across `prompt_default` and `prompt_autogen` functions for cleaner output; 2) Minor indentation and code cleanup.
This commit is contained in:
parent
8295d3f5ab
commit
42392307a4
1 changed files with 9 additions and 19 deletions
|
|
@ -8,38 +8,28 @@ get_random_hex() {
|
||||||
}
|
}
|
||||||
|
|
||||||
prompt_default() {
|
prompt_default() {
|
||||||
|
local response=""
|
||||||
if [ -t 0 ]; then
|
if [ -t 0 ]; then
|
||||||
printf "Enter %s [%s]: " "$1" "$2"
|
read -r -p "Enter $1 [$2]: " response </dev/tty || response=""
|
||||||
if read -r response </dev/tty; then
|
|
||||||
:
|
|
||||||
else
|
|
||||||
response=""
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
response=""
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "${response//[[:space:]]/}" ]; then
|
if [ -z "${response//[[:space:]]/}" ]; then
|
||||||
echo "$2"
|
printf '%s\n' "$2"
|
||||||
else
|
else
|
||||||
echo "$response"
|
printf '%s\n' "$response"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
prompt_autogen() {
|
prompt_autogen() {
|
||||||
|
local response=""
|
||||||
if [ -t 0 ]; then
|
if [ -t 0 ]; then
|
||||||
printf "Enter %s (leave blank to auto-generate): " "$1"
|
read -r -p "Enter $1 (leave blank to auto-generate): " response </dev/tty || response=""
|
||||||
if read -r response </dev/tty; then
|
|
||||||
:
|
|
||||||
else
|
|
||||||
response=""
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
response=""
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "${response//[[:space:]]/}" ]; then
|
if [ -z "${response//[[:space:]]/}" ]; then
|
||||||
get_random_hex "$2"
|
get_random_hex "$2"
|
||||||
else
|
else
|
||||||
echo "$response"
|
printf '%s\n' "$response"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue