summaryrefslogtreecommitdiff
path: root/utils/installer
diff options
context:
space:
mode:
authorWilliam Boman <[email protected]>2022-04-23 09:39:25 +0200
committerGitHub <[email protected]>2022-04-23 09:39:25 +0200
commit84d91bd3be64db5b57744fe8e679da7e45e37055 (patch)
tree3e14db30e1e89734fae5118bc5181dca8809f99e /utils/installer
parent8fdd4b46e8b91f62c11efd90153623e299748723 (diff)
feat(installer): ensure correct responses when prompting user (#2506)
Diffstat (limited to 'utils/installer')
-rwxr-xr-xutils/installer/install.sh39
1 files changed, 28 insertions, 11 deletions
diff --git a/utils/installer/install.sh b/utils/installer/install.sh
index b44880bd..0d56fe30 100755
--- a/utils/installer/install.sh
+++ b/utils/installer/install.sh
@@ -85,6 +85,25 @@ function msg() {
printf "%s\n" "$text"
}
+function confirm() {
+ local question="$1"
+ while true; do
+ msg "$question"
+ read -p "[y]es or [n]o (default: no) : " -r answer
+ case "$answer" in
+ y | Y | yes | YES | Yes)
+ return 0
+ ;;
+ n | N | no | NO | No | *[[:blank:]]* | "")
+ return 1
+ ;;
+ *)
+ msg "Please answer [y]es or [n]o."
+ ;;
+ esac
+ done
+}
+
function main() {
parse_arguments "$@"
@@ -97,17 +116,15 @@ function main() {
if [ "$ARGS_INSTALL_DEPENDENCIES" -eq 1 ]; then
if [ "$INTERACTIVE_MODE" -eq 1 ]; then
- msg "Would you like to install LunarVim's NodeJS dependencies?"
- read -p "[y]es or [n]o (default: no) : " -r answer
- [ "$answer" != "${answer#[Yy]}" ] && install_nodejs_deps
-
- msg "Would you like to install LunarVim's Python dependencies?"
- read -p "[y]es or [n]o (default: no) : " -r answer
- [ "$answer" != "${answer#[Yy]}" ] && install_python_deps
-
- msg "Would you like to install LunarVim's Rust dependencies?"
- read -p "[y]es or [n]o (default: no) : " -r answer
- [ "$answer" != "${answer#[Yy]}" ] && install_rust_deps
+ if confirm "Would you like to install LunarVim's NodeJS dependencies?"; then
+ install_nodejs_deps
+ fi
+ if confirm "Would you like to install LunarVim's Python dependencies?"; then
+ install_python_deps
+ fi
+ if confirm "Would you like to install LunarVim's Rust dependencies?"; then
+ install_rust_deps
+ fi
else
install_nodejs_deps
install_python_deps